JAVA

[JAVA] 리터럴

선나밍 2020. 6. 16. 21:03
728x90
반응형

자바의 정석 기초 편 참조

 

https://cafe.naver.com/javachobostudy

 

남궁성의 코드초보스터디(자바 java... : 네이버 카페

전문가가 지도하는 스터디카페에요. 프로그래밍언어(자바 java, C언어)를 제대로 배우고픈 분들 오세요.

cafe.naver.com

 

 


 

 

 

리터럴 

 

 

이전 시간에 변수와 상수 타입을 알아봤다. 

 

이번 시간에는 리터럴 타입과 접미사에 알아볼 것이다.

 

먼저 변수에는 변수 타입이 있다고 했는데, 리터럴에도 타입이 있다.

 

변수 타입은 저장될 값의 타입에 의해 결정된다고 했는데, 

저장될 값은 리터럴이므로 리터럴 값에 의해 결정된다고 생각하면 된다.

만약 리터럴에 타입이 없다면 변수의 타입도 사용할 일이 없을 것이다.

 

 

 

 

리터럴 타입과 접미사에 대해 설명하겠다.

 

종류 리터럴 접미사
논리형 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 두 개이다.

 

 

728x90
반응형