목차
1. 레퍼 클래스
2. 오퍼레이터
3. 조건문
사용된 단축키
Ctrl + D
선택된 영역 삭제 EX) 커서가 라인에 있으면 라인삭제, 블록이 잡혀 있으면 선택된 블록 삭제
Alt + 화살표
선택된 영역 화살표 방향으로 이동
Ctrl + Shift + C
선택된 영역
Ctrl + Alt+ 화살표
선택된 영역 복사 + 붙여넣기 (바로 밑으로 붙여 넣기 됨)
Ctrl + shift + X
1. 레퍼 클래스
클래스 안에 변수 및 메소드가 정의 되어 있는 클래스
EX) System.out.println("abcd");
1) 각 정수들의 최대 최소 값 보는 방법
@ MIN_VALUE
@ MAX_VALUE


EX) byte 정수 변수에 담을수 있는 값들의 값은
Byte.MIN_VALUE, Byte.MAX_VALUE 값들을 이용하여 확인 할수 있다


2) parseDouble
parseDouble는 String(문자열)을 Double 타입의 정수로 변환 해주는 메소드 이다.
Double 말고도 Integer, Float 등도 사용 가능 하다

문자열로 합쳐 졌기 때문에 첫번째 값은 100100 이다.
"100" 문자열을 doubel 형태로 변경 하였기 때문에 100+100 200값이 출력 되었다.
3) FINAL
한번 초기화된 변수는 절대 변경 할수 없다.
FINAL은 상수 고정값 이다.
대부분 FINAL 변수는 대문자로 선언 한다. (변수 선언시 여러 단어가 들어 갈시 "_"로 식별자로 구분 한다)
EX) final int KOSTA_KOR = 100;

메소드 인자 값에도 FINAL을 선언하여 전달받은 값을 고정으로 사용 할수 있다.

2. 오퍼레이터
1) 산술연산
+ ,-,*, /(정수연산자 몫 만), % (나머지 만)
EX) 10%3=1

2) 비트 연산
& | ^
& 비교값이 같으면 참
| 비교값이 하나라도 참이면 참
^ 비교값이 같으면 거짓, 다르면 참 (참이든 거짓이든 상관 없이 비교값이 같을경우 ex)true^true => 거짓)
EX) 8&2
0000 1000 : 8
0000 0010 : 2
& 0000 0000 : 0
EX) 8|2
0000 1000 : 8
0000 0010 : 2
| 0000 1010 : 10
EX) 8^2
0000 1000 : 8
0000 0010 : 2
^ 0000 1010 : 10
ㅇ

3)논리연산
true, false : & | ^, &&,||
& : A & B A와 B 조건이 둘다 참일 경우 TRUE
| : A | B A와 B 조건 중 하나가 참일 경우 TRUE
&& : A && B A와 B 조건이 둘다 참일 경우 TRUE
|| : A || B A와 B 조건 중 하나가 참일 경우 TRUE
&,&& 차이점
|: 해당 조건들이 모두 만족 하는지 확인
||: 해당조건들 중 만족하는 조건이 나올시 바로 리턴
ex1) (a1 || b1)
a1이 참 이면 바로 true로 리턴
a1만 조건만 확인 하면 되므로 빠름
ex2) (a1 | b1)
a1,b1 이 모두 참 인진 확인 후 true 리턴
a1,b1의 조건을 확인을 해야 하기 때문에 시간이 오래 걸림
'|' 보다 '||' 가 성능이 더 빠르다

4)비교연산
결과가 반드시 boolean 타입
==(같니), !=(다르니), <(크냐), >(작냐), <=(이상), >=(이하)

5)대입연산(할당연산)
=, +=, -=, *=, /=, %=, &=, |=, ^=
해당 연산을 한 후 대입
ex) x += 3
x=x+3

6)시프트연산
>>, <<, >>>(양수만으로 표현)
비트이동연산, 속도를 요구하는곳이나, 암호하 하는곳에서
8:1000 (2진수)
8>>2: 0010
1:0001
1<<2:0100

7)증감연산
--,++
한번 이벤트가 발생시 1씩 증가 1씩 감소 하게 된다
증감연산자가 앞에 붙으면 우선순위가 높고,
증감연산자가 뒤에 붙으면 우선순위가 낮다
EX) b=a++
=> b에 넣고 a를 증가 하여라 => b:10, a:11
EX) b=++a
=> a를 증가 하고 b에 넣어라 => b:10, a:10

8)삼항연산(분기처리용)
조건식(비교,논리) ? a : b
조건식이 참이면 a 실행, 조건식이 거짓이면 b 실행

3. 조건문
1) if
조건에 대한 분기처리
조건에는 비교,논리 만 와야 한다

2) if-else
조건에 대한 분기처리
참일 경우에는 if문의 블록이 실행
거짓일 경우에는 else의 블록이 실행

3) if-else if
조건이 여러개일 경우 사용
if (조건1) {
조건 1일때 실행
}
else if (조건2){
조건 2일때 실행
}
.....
else{
만족 하는 조건이 없을때 실행
}

4) switch
key 값으로 사용 될수 있는 타입
정수,문자형 7버전 부터 문자열 허용
break 문 밑에는 코딩 하면 안됌
break문을 작성하지 않으면 다음 case도 실행
break문이 있는 case 까지 실행
break문이 없는 case 문을 어디에 사용될지 생각해보았다
EX)
1등에게는 양말 옷 상금
2등에게는 양말 옷
3등에게는 양말
break문이 없는 case문의 실제 코딩 장면
평균을 10으로 나누어 몫이 10 (전부 100점), 9일 경우에는 A등급이므로 break문을 없에 코딩을 간소화

↓

switch은 키값이 들어오면 바로 몇번째 케이스인지 알기 때문에 속도 측면에서 if-else if 보다 성능이 좋다
같은 로직으로 구현이 가능 하다면 switch로 구현 하자