이왕 시작한 김에 2주차까지만.. 끝내고 가자!
Chap 03. 상수와 형 변환
03-1 상수(constant)
▶자바에서 말하는 '상수'
- 변수에 값을 딱 한번만 할당할 수 있ㅇ면 그것은 상수!
- 한 번 할당된 값은 변경이 불가능하다.
- 키워드 final선언이 붙어있는 변수
▶final 기반의 상수 선언의 예
- 상수의 이름은 모두 대문자로 짓는 것이 관례(하나의 메소드 안에서만 사용하는 지역변수와 달리, 상수는 중복하여 사용할 경우에 문제가 발생하므로 대문자로 작성하는 것이 관례로 굳어짐)
- 이름이 둘 이상의 단어로 이뤄질 경우 단어를 언더바로 연결하는 것이 관례(스네이크형)


final int CONST_ASSIGNED;
CONST_ASSIGNED = 12;
할당 하지 않았던 상수를 나중에 할당하는 방법도 있다!
03-2 리터럴(Literals) 에 대한 이해
▶정수형은 'int'형이 디폴트, 실수형은 'double'형이 디폴트
(정수는 무조건 int형으로, 실수형은 double형으로 인식하기로 약속되어있음. 따라서, 5와 7은 '정수형 리터럴'이며 3.3과 4.5는 '실수형 리터럴'이다.)
▶'리터럴'이라는 표현은 '상수'라는 표현으로 대신하는 경우가 많다.

정수형은 10진수, 8진수, 16진수를 입력해도 모두 int형으로 인식되기 때문에, 011+ 022 + 033의 결과가 066이 아니라 54이다( 8x1+1=9, 8x2+2=18, 8x3+3=27 / 8진수가 10진수로 변환되어 계산된다).
16진수인 0x11+0x22+0x33의 결과도 마찬가지로 int형으로 변환된 후 계산된다.

integer는 4byte 크기만큼의 데이터를 표현할 수 있기 때문에, 그 범위(-2100000000~2100000000)가 넘어가면 integer로 표현이 불가능하며 오류가 발생한다. 따라서 long형(8byte)으로 표현해야 해당 오류를 피할 수 있다.
실수형리터럴도 마찬가지로, 실수는 기본 double형임을 명시하기 위해 d또는 D를 삽입가능하며, 실수형 상수를 float형으로 표현하려면 f또는 F를 삽입한다.


+) '\ㅜ'은 캐리지 리턴이기 때문에, 맨 앞자리인 A의 자리로 온 뒤, C로 바뀐다.
03-3 형변환

- 두 피연산자의 자료형이 일치해야 동일한 방법을 적용하여 연산을 진행할 수 있다.
- 피연산자의 자료형이 일치하지 않을 때 형(Type)의 변환을 통해 일치를 시켜야한다.

차례대로 1byte→ 2byte→ 4byte→ 8byte(정수)→ 4byte(실수)→ 8byte(실수)

Chap 04. 연산자
연산자는 기존 파이썬, c, c++로 많이 단련되었기 때문에,,, 기본적인 부분과 헷갈리는 부분들만 짚고 넘어감
04-1 자바에서 제공하는 이항 연산자들

04-2 증가 감소 연산자

(1) Prefix 증가 감소 연산자 예제
int num = 7;
System.out.println(++num); //num의 값 하나 증가 후 출력, 8
System.out.println(++num); //num의 값 하나 증가 후 출력, 9
System.out.println(num); //9
(2) Postfix 증가 감소 연산자 예제
int num = 5;
System.out.println((num++) + " "); //출력 후에 값이 증가, 5출력
System.out.println((num++) + " "); //출력 후에 값이 증가, 6출력
System.out.println((num + "\n"); //7출력
System.out.println((num--) + " "); //출력 후에 값이 감소, 7출력
System.out.println((num--) + " "); //출력 후에 값이 감소, 6출력
System.out.println((num + "\n"); //5출력
04-3 비트 연산자와 시프트 연산자



헤헤 연말에 약속이 많아서 잠깐 쉬다가 이제 다시 시작!
'Java' 카테고리의 다른 글
| [Java] 6주차 복습 - chap 12, 13 (2) | 2022.01.21 |
|---|---|
| [Java] 5주차 복습 - Chap 10, 11 (0) | 2022.01.13 |
| [Java] 4주차 복습 - Chap 07, 08, 09 (0) | 2022.01.06 |
| [Java] 3주차 복습 - Chap 05, 06 (3) | 2022.01.04 |
| [Java] 1주차 복습 - Chap01, 02 (2) | 2021.12.29 |