기본형(primitive type)
논리형(boolean)
boolean
- 논리형은 boolean 한가지 뿐
- true와 false 중 하나를 저장 할 수 있으며 default는 false이다.
- 값은 0과 1, 즉 1비트만 있으면 되지만 JAVA의 기본 메모리 단위가 1 byte이므로 1 byte의 공간을 차지한다.
- 예약어인 true와 false만 사용 가능하므로 True, False등은 사용 불가능.
문자형(char)
- 문자형은 char 한가지 뿐
- 문자의 유니코드(정수)가 저장된다. 유니코드를 직접 저장 할 수도 있다.
char ch1 = 'A';
char ch2 = 65;
// ch1 == ch2 -> true
- 특수 문자 리터럴이 있다.
특수문자 | 문자 리터럴 |
---|---|
tab | \t |
backspace | \b |
form feed | \f |
new line | \n |
carriage return | \r |
역슬래쉬 | \\ |
작은 따옴표 | \' |
큰 따옴표 | \" |
유니코드 (16진수 문자) | \u유니코드 (ex. char a = '\u0041') |
정수형(byte, short, int, long)
- byte, short, int, long 4가지 타입이 있으며 각 1byte, 2byte, 4byte, 8byte의 크기를 가진다.
- 가장 왼쪽의 첫번째비트를 부호비트로 사용한다. (양수는 0, 음수는 1)
- JVM의 피연산자 스택(operand stack)이 4 byte 단위로 저장하기 때문에 4byte보다 작은 값을 계산할 때는 4 byte으로 변환하여 계산한다. 따라서 int형의 연산이 byte 혹은 short보다 효율적이다.
실수형(float, double)
- 실수를 저장하기 위한 타입.
- 오버플로우가 발생하면 무한대가 되며, 언더플로우가 발생하면 0이 된다.
- float은 정밀도가 7자리이며(7자리의 10진수를 오차없이 저장 가능하다), double은 15자리이다.
- 실수를 부동소수점 형태로 저장하며, 부호(Sign), 지수(Exponent), 가수(Mantissa) 로 이루어져 있다.
- 지수 부분에 의해 자릿수가 결정되며, 가수 부분에 의해 오차없이 저장할 수 있는 숫자의 범위가 결정된다.
728x90
반응형