Java 입문 | 자바 기본 구조 | 리터럴(Literal)


리터럴(Literal)

리터럴은 데이터 그 자체를 뜻 한다. 변수에 넣는 변하지 않는 데이터를 의미하는 것이다.

아래의 예제를 보자.

int a = 1;

int 앞에 a는 변수이고, 여기서의 1은 리터럴이다.
즉, 1과 같이 변하지 않는 데이터(boolean, char, double, long, int, etc…)를 리터럴(literal)이라고 부른다.

정수 - integer

가장 일반적으로 사용되는 데이터 자료형이다. 모든 임의의 정수 값은 정수 리터럴이다. 예를 들어 1, 2, 3, 42는 정수 리터널이다. 이런한 값들은 10진수이나, 8진수나 16진수를 사용할 수도 있다.
8진수는 숫자 0을 앞에 표시하고 숫자를 표시한다. 일반 10진수에는 0을 표시하지 않기 때문에 07과 7은 다른게 인식한다.
16진수는 0x(또는 0X)를 먼저 적고 16진수 상수를 지정한다. 범위는 0~16까지 이며 a~f(A~F)가 10~15까지를 대신한다.
모든 정수형 데이터가 기본적으로 int형이기 때문에 long 데이터 자료형에 정확한 long 리터럴을 지정하기 위해서는 숫자 뒤에 알파벨 l(또는 L)를 추가 해줘야 한다.
byte와 short 변수에 숫자를 저장할 때 저장되는 숫자의 범위가 해당 데이터 형의 자료형에 포함된다면 에러가 발생하지 않는다.

부동 소수점 - floating point

부동 소수점 리터널은 소수점 이하(분수)를 가진 10진 값들이다. 예를 들어 2.0, 3.1415, -0.6667은 모두 부동 소수점 리터널이다.
double형 자료형은 부동 소수점의 기본형이다. 숫자 뒤에 알파벨 d(또는 D)를 추가할 수도 있다.
float형 자료형은 부동 소수점의 기본형이다. 숫자 뒤에 알파벨 d(또는 D)를 추가할 수도 있다.

부울 - boolean

부울 상수는 두개의 논리적인 값, true(참), false(거짓)만 있다. C/C++에서와 같이 참, 거짓을 숫자로 표시 할 수는 없다.

문자 - character

자바의 모든 문자들은 Unicode를 사용한다. 정수로 변환될 수 있으며, 더하고 빼는 거와 같은 연산도 가능하다. 정부 형태가 아닌 문자 리터럴을 표시하고자 할 때는 단일 인용 부호(`, `)를 사용한다. 유니코드나 직접 입력이 불가능한 문자들에 대해서는 역슬래쉬( \ )를 이용하여 표시할 수 있다.

escape 시퀀스 설명
\ddd 8진 문자 (ddd)
\uxxxx 16진수 Unicode 문자 (xxxx)
\` 단일 인용 부호
\" 이중 인용 부호
\ 역슬래쉬
\r 캐리지 리턴
\n 뉴 라인(또는 라인 피드)
\f 폼 피드(form feed)
\t 탭(tab)
\b 백스페이스(backspace)

문자열 - string

문자열 리터널은 이중 인용 부호(", “)로 지정하여 사용한다.

String str = "안녕하세요.";