Java의 자료형에 대해서 알아보겠습니다.
Java의 기본적인 자료형은 다음과 같습니다.
데이터 타입 이름 | 데이터의 크기 | 기타사항 |
boolean | ?(1bit 혹은 1byte) | 데이터의 크기가 정해져있지 않음 |
char | 2byte | 2^16, 유니코드를 사용한다. 문자 |
byte | 1byte | 2^8(-128~127), 정수 |
short | 2byte | 2^16(-32,768 ~ 32,767), 정수 |
int | 4byte | 2^32(-2,147,483,648 ~ 2,147,483,647), 정수 |
long | 8byte | 2^64(-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807), 정수 |
float | 4byte | 2^32(-3.4E38 ~ 3.4E38), 실수 |
double | 8byte | 2^64(-1.7E308 ~ 1.7E308), 실수 |
String | X | 기본 타입이 아닌 String 클래스임 |
공식문서를 확인해 보면 알 수 있듯이 boolean형의 데이터는 자료형의 크기가 정해져 있지 않습니다.
그래서 1bit, 1byte라는 다른 크기가 여러 곳에서 혼용되어 나오게 됩니다.
어떤 상황에서도 동일하게 작동되는 것을 보통 생각하기 때문에 1byte로 생각하시는 게 편할 듯합니다.
실수를 다루는 자료형인 float과 double의 경우 부동소수점오차가 존재하기 때문에 유의하여 사용하시기 바랍니다.
추가적으로 래퍼런스라는 C/C++의 포인터와 비슷한 개념의 자료형이 있는데 따로 다루도록 하겠습니다.