자바의 정석 기초 편 참조
https://cafe.naver.com/javachobostudy
리터럴
이전 시간에 변수와 상수 타입을 알아봤다.
이번 시간에는 리터럴 타입과 접미사에 알아볼 것이다.
먼저 변수에는 변수 타입이 있다고 했는데, 리터럴에도 타입이 있다.
변수 타입은 저장될 값의 타입에 의해 결정된다고 했는데,
저장될 값은 리터럴이므로 리터럴 값에 의해 결정된다고 생각하면 된다.
만약 리터럴에 타입이 없다면 변수의 타입도 사용할 일이 없을 것이다.
리터럴 타입과 접미사에 대해 설명하겠다.
종류 | 리터럴 | 접미사 |
논리형 | false, true | 없음 |
정수형 | 234, 0b0101,077, 0xFF, 100L | L |
실수형 | 3.14, 3.0e8, 1.4f, 0x1.0p-1 | f, d |
문자형 | 'A', '1', '\n' | 없음 |
문자열 | "ABC", "2456", "a", "false" | 없음 |
위 표를 보면 정수형과 실수형이 존재한다.
정수형과 실수형에는 여러 타입이 존재하기에 리터럴에 접미사를 붙여서 타입을 구분한다.
종류 | 타입 | 접미사 |
정수형 | long | L, l |
int | 없음 | |
byte | 접미사는 없으나 변수에 값 저장 시 int 타입의 리터럴 사용 | |
short | 접미사는 없으나 변수에 값 저장 시 int 타입의 리터럴 사용 |
10진수 외에도 2, 8, 16 진수로 표현된 리터럴(값)을 변수에 저장할 수 있다.
16진수일 경우 16진 수라는 것을 표시하기 위해 리터럴 앞에 접두사 '0x' 또는 0X를 붙이며,
8진수일 경우 8진 수라는 것을 표시하기 위해 리터럴 앞에 접두사 '0'을 붙인다.
int num1 = 017 일 경우 8진수는 17, 10진수는 15이다.
int num2 = 0x10 일 경우 16진수는 10, 10진수는 16이다.
JDK1.7부터 정수형 리터럴 중간에 구분자 '_'를 넣을 수 있게 되어 큰 숫자를 편하게 읽을 수 있다.
long max = 100_000_000_000L;
종류 | 타입 | 접미사 |
실수형 | float | f, F |
double | d, D |
실수형 리터럴은 접미사를 붙여서 타입을 구분하며, float 타입 리터럴에는 'f'를 붙이며,
double 타입 리터럴에는 'd'를 붙인다.
float pi_float = 3.14f; 일 경우 접미사 f 또는 F를 사용할 수 있으며, 생략 불가하다.
double pi_double =3.14; 일 경우 접미사 d 또는 D를 사용할 수 있으며, 생각 가능하다.
정수형에는 int가 기본 자료형으로 접미사를 붙이지 않으며, 실수형에서는 double이 기본 자료형으로 접미사 'd'는 생략 가능하다.
여기서 꼭 기억해야 될 것은 접미사 f와 L 두 개이다.
'JAVA' 카테고리의 다른 글
[JAVA] 문자열 결합 (0) | 2020.06.18 |
---|---|
[JAVA] 문자열 리터럴과 문자 리터럴 (0) | 2020.06.16 |
[JAVA] 상수와 리터럴 (0) | 2020.06.16 |
[JAVA] 변수 선언과 대입(저장) (0) | 2020.06.14 |
[JAVA] 화면에 글자 출력하기 - print(), println() (0) | 2020.06.14 |