bit: 0, 1로 이루어짐
8 bit | 1 byte |
---|---|
1024 byte | 1 kilobyte |
1024 kilobyte | 1 megabyte |
1024 megabyte | 1 gigabyte |
1024 gigabyte | 1 terabyte |
1024 terabyte | 1 petabyte |
1024 petabyte | 1 exabyte |
1024 exabyte | 1 zettabyte |
데이터 타입 | 메모리 크기 | 표현 가능 범위 |
---|---|---|
byte | 1 byte | -128 ~ 127 |
short | 2 byte | -32,768 ~ 32,767 |
int | 4 byte | -2,147,483,648~2,147,483,647 |
long | 8 byte | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
long a = 2147483647
long b = 1
long 데이터 타입으로 지정한 변수 a와 b는 같은 8 byte의 메모리를 사용한다.
따라서 데이터 용량에 따라 합리적으로 데이터 타입을 선택하여 사용한다.
적은 데이터를 사용할 때는 byte를 사용한다.
float | 4 byte | ±(1.40129846432481707e-45 ~ 3.40282346638528860e+38) |
---|---|---|
double | 8 byte | ±(4.94065645841246544e-324d ~ 1.79769313486231570e+308d) |
실수형 데이터 타입에는 float와 double이 있다. 실수를 사용할 때 double을 사용한다.
char | 2 byte | 모든 유니코드 문자 |
---|
문자(character)의 준말인 char를 문자 데이터 타입으로 사용한다.
'A'는 2 byte를 사용한다.
"AB"는 4 byte를 사용한다.
상수(constant): 변하지 않는 고정 되어 있는 값
a는 변수고 1은 상수다.
a = 1;
float a = 2.2; //error
double a = 2.2;
float a = 2.2F;
실수는 double 데이터형을 사용하고, float형을 사용하려면 F로 지정 해야 한다.
long a = 2147483648; //error
long a = 2147483648L;
byte b = 100;
데이터 타입이 정수 형의 디폴트 데이터 타입인 int이기 때문에 long으로 바꿔주기 위해 L을 붙여서 명시적으로 long이라고 지정해줬다.
자바에서 short과 byte 데이터 타입은 변수의 int를 사용하는 것을 허용한다. (단, byte로 표시할 수 있는 범위 내에서 허용한다.)
출처