본문 바로가기
Java/Java 인강

Java 인강 필기 2

by code2772 2022. 10. 2.

[ 목차 ]

    728x90
    반응형
    (22.7.26)
    
    # DDAZUA JAVA 강의 3강 ~ 6강
    
    ​
    
    ​
    
    3강 변수와 상수
    
    ​
    
    1. 변수란 -> 값을 저장하는 공간
    
    변수의 특징 - 하나의 변수에 하나의 값만 저장할 수 있다.
    
    변수에 저장된 값을 변경할 수 있다.
    
    //변수 사용 이유 - 간편한 수정, 다음 명령에서의 기억, 값에 의미부여
    
    //변수 작성 시 주의사항
    
    - 숫자로 시작 불가
    
    - 특수문자 사용이 불가능, $, _ 만 가능
    
    - 대소문자를 구분한다
    
    - 이미 사용하고 있는 예약어는 사용 불가
    
    EX) 헝가리안 표기법, 카멜 표기법, 파스칼 표기법
    
    ​
    
    package day03;
    
    ​
    
    public class DataType {
    
    ​
    
    public static void main(String[] args) {
    
    int a = 65;// 묵시적형변환(자동으로 변환)
    
    float f = a;
    
    System.out.println(f);
    
    char c = (char)a;//명시적 형변환(강제 형변환)
    
    System.out.println(c);
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    
    
    2, 자료형
    
    ​
    
    데이터 타입의 종류
    
    정수형 - (int, long, short) - (4,8,2)byte
    
    실수형 - float, double - (4,8)byte
    
    문자형 - char - (2)
    
    문자열 - String - (?)
    
    논리형 - boolean - (1)
    
    ​
    
    package day03;
    
    ​
    
    public class VarTest {
    
    ​
    
    public static void main(String[] args) {
    
    //정수형변수
    
    int i =100;
    
    //실수형변수
    
    float f = 3.14f;
    
    //문자형변수
    
    char c = 'c';
    
    //문자열변수
    
    String s = "hello";
    
    //논리혛변수
    
    boolean b = true;
    
    ​
    
    System.out.println(i);
    
    System.out.println(f);
    
    System.out.println(c);
    
    System.out.println(s);
    
    System.out.println(b);
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    3, 형변환 - 변수나 상수의 데이터 타입을 다른 타입으로 변환
    
    ​
    
    4. 변수의 상수화 - 변수에 저장된 값을 변경하지 않고 상수처럼 사용
    
    - 형이 유지되는 수(상수)
    
    - fianal 자료형 변수명 = 값; (다시는 변경하지 않겠다.)
    
    ​
    
    ​
    
    package day03;
    
    ​
    
    public class Piacrca {
    
    ​
    
    public static void main(String[] args) {
    
    int a = 3;
    
    a = 4;
    
    ​
    
    final double PI=3.14; // error -> final 변경불가
    
    //PI 대문자로 사용 파이널 함수 있을 시 코드의 가독성을 위해
    
    PI=3.15;
    
    ​
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    ​
    
    4강 연산자1
    
    ​
    
    1. 연산자의 종류와 우선순위
    
    - 산술/단항/비교/논리/쉬프트/기타 연산자
    
    !!연산자 우선순위!!
    
    [],() -> !,~,+,-,++ -> +,-,*,/,% -> <<,>> -> <,>,==,!= -> &&,ll
    
    -> (조건)?참::거짓 -> =,+=,-= //(최단산쉬관논삼대)
    
    2, 산술연산자
    
    3, 단항연산자
    
    4, 비교연산자
    
    ​
    
    String 문자열클래스 안에있는 메서드(기능) :equals()
    
    ​
    
    package day04;
    
    ​
    
    public class Operator {
    
    ​
    
    public static void main(String[] args) {
    
    System.out.println(a+b);
    
    System.out.println(a-b);
    
    System.out.println(a*b);
    
    System.out.println(a/b);
    
    System.out.println(a%b);
    
    ​
    
    System.out.println(a/doubleB);
    
    System.out.println(a%doubleB);
    
    System.out.println(doubleB/a);
    
    ​
    
    int a =1
    
    a++;//후위
    
    ++a;//전위
    
    ​
    
    System.out.println(a);
    
    System.out.println(a++);
    
    System.out.println(++a);
    
    ​
    
    //true / false 나옴
    
    System.out.println(a<b);
    
    System.out.println(a>b);
    
    System.out.println(a+b<=c);
    
    System.out.println(a+b>=c);
    
    System.out.println(a==b);
    
    System.out.println(a!=b);
    
    ​
    
    String c1 = "Hello Java!"
    
    System.out.println(c1 == "Hello Java!");//true
    
    System.out.println(c1.equals("Hello Java!"));
    
    //문자열 비교시 == 등가비교연산자를 사용하지 않는다. equals 사용
    
    System.out.println(c1.equals(hello java!));//대소문자 구분가능
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    ​
    
    5강 연산자2
    
    ​
    
    1. 논리연산자 - 여러 가지 조건을 동시에 검사시 사용하는 연산자
    
    두 항의 값이 blooean 값일 때 연산 가능하다.
    
    ​
    
    AND(&&), OR(||) 컨트롤 역슬레시 , NOT(!)
    
    ​
    
    2비트 연산자
    
    ​
    
    10진수의 2진수 변환 - 몫이 1이 될 때 까지 나눈 후 거꾸로 올리기
    
    ​
    
    2진수의 10진수 변환 - 각 자리의 값이 1인 수를 2의 승으로 계산한 합
    
    ​
    
    2진수의 덧셈연산 ex) 0101(2) + 0010(2) = 0111(2) -> 7
    
    ​
    
    package day05;
    
    ​
    
    public class Logic_operation {
    
    ​
    
    public static void main(String[] args) {
    
    boolean a=true; //노라형 변수애 참 저장
    
    boolean b=false;
    
    boolean c=true;
    
    System.out.println(a&&b);//a,b 전부 참이어야 참
    
    System.out.println(a&&c);
    
    System.out.println((2<4)&&(4<5));
    
    System.out.println(a||b);//a,b 둘중 하나만 참이면 참
    
    System.out.println(a^b);// 서로 달라야 참 즉 1
    
    ​
    
    System.out.println(!a);// a가 true이면 flase
    
    ​
    
    ​
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    ​
    
    *윈도우 + e (내피시 단축키)
    
    ​
    
    NOT 연산
    
    ~5 ->5 = 0101(2) ->(보수) 1010 +1 0110 -> 6 보수 처리 -해주면 -6
    
    1) 부호가 왜 변하는가 5는 4비트로 표현한다고 가정
    
    6 = 0110
    
    -6 = 1010 ->not연산 -> 0101(2) -> 5
    
    0 = 0000
    
    ​
    
    NOt 연산 공식 ->~a = -a-1 EX) 5이면 낫 연산 결과 -6
    
    ​
    
    비트연산자
    
    15>>2 ->15 = 1111(2) // 우로 2칸 이동 -> 0011 =3
    
    5<<4 -> 5 = 0101(2) // 죄로 4카닝동 -> 0101 0000 = 80
    
    ​
    
    package day05;
    
    ​
    
    public class Xor_practice {
    
    ​
    
    public static void main(String[] args) {
    
    int a=15;// 1111
    
    int b=5;//0101
    
    //비트 논리연산자
    
    System.out.println(a&b); //0101
    
    System.out.println(a|b);//1111
    
    ​
    
    System.out.println(a^b);//1010
    
    System.out.println(~b);
    
    //비트 쉬프트 연산자
    
    System.out.println(a>>2);
    
    System.out.println(b<<4);
    
    
    
    }
    
    }
    
    ​
    
    6강 연산자3
    
    ​
    
    기타연산자 - 객체의 타입을 확인하는 연산자
    
    참조변수 instanceof 클래스명
    
    ​
    
    클래스? - 객체를 만들기 위한 프레임(앞글자는 대문자!!)
    
    ​
    
    1.삼항연산자 - 항이 3개인 연산자 (조건)?참일떄 값 : 거짓일 때 값
    
    ​
    
    ctrl shifr O - 자동 임폴트
    
    신호등 프로그램 - 3항 연산자
    
    ​
    
    package day06;
    
    ​
    
    import java.util.Scanner;
    
    ​
    
    public class Traffic_Lights {
    
    ​
    
    public static void main(String[] args) {
    
    Scanner sc = new Scanner(System.in);
    
    System.out.println("신호등 프로그램");
    
    System.out.println("신호를 입력해주세여");
    
    System.out.println("빨간색:1, 초록불:2, 노란불");
    
    int sign = sc.nextInt();
    
    String result=sign==1?"정지하세요~":sign==2?"출발하세요":"서행하세여";
    
    System.out.println(result);
    
    
    
    }
    
    ​
    
    }
    
    ​
    
    ​
    
    2. 대입연산자 - 값을 할당할 때 사용하는 연산자
    
    저장공간 = 값; -> ex) x=3
    
    ​
    
    3. 복합대입연산자 - 산술연잔사 + 대입연산자
    
    [변수][산술연산자][대입연산자][값] EX) x+=3
    
    ​
    
    package day06;
    
    ​
    
    public class Hello {
    
    ​
    
    public static void main(String[] args) {
    
    ​
    
    String s = "Hello";
    
    int i=3;
    
    float f =3.14f;
    
    double d = 3.14;
    
    char c='a';
    
    System.out.println(s instanceof String);//저 s가 스트링으로 만들어진건가요??
    
    System.out.println(Integer.valueOf(i) instanceof Integer);// instanceof 다음 대문자!
    
    System.out.println(Float.valueOf(f) instanceof Float);
    
    System.out.println(Double.valueOf(d) instanceof Double );
    
    System.out.println(Character.valueOf(c) instanceof Character );
    
    ​
    
    ​
    
    }
    
    ​
    
    }
    
    ​
    
    ​
    
    package day06;
    
    ​
    
    public class Asiign {
    
    ​
    
    public static void main(String[] args) {
    
    ​
    
    int a= 3;
    
    int b=5;
    
    b=a; //
    
    System.out.println(b);//b=3
    
    ​
    
    a+=1;
    
    System.out.println(a);//a=4
    
    
    
    a/=2;
    
    System.out.println(a);
    
    ​
    
    a*=a;
    
    System.out.println(a);
    
    }
    
    ​
    
    ​
    
    }
    
    ​
    
    ​
    
    package day06;
    
    ​
    
    public class ComplexOP {
    
    ​
    
    public static void main(String[] args) {
    
    ​
    
    int x=10;
    
    x=x+10;//x=20
    
    System.out.println(x);
    
    ​
    
    int y = 10;
    
    y+=10;//y=y+10
    
    System.out.println(y);
    
    }
    
    ​
    
    }
    반응형

    'Java > Java 인강' 카테고리의 다른 글

    Java 인강 필기 6  (0) 2022.10.02
    Java 인강 필기 5  (0) 2022.10.02
    Java 인강 필기 4  (0) 2022.10.02
    Java 인강 필기 3  (0) 2022.10.02
    Java 인강 필기 1  (0) 2022.10.01