1. 데이터 크기
- 1비트(bit) = 0 또는 1을 넣을 수 있는 크기
- 1바이트(byte) = 8비트를 넣을 수 있는 크기(8개의 0또는 1)
- 1킬로바이트(kilobyte) = 1024바이트를 넣을 수 있는 크기
- 1메가바이트(megabyte) = 1024킬로바이트
- 1기가바이트(gigabyte) = 1024메가바이트
- 1테라바이트(terabyte) = 1024기가바이트
2. 정수형 데이터 타입 비교
데이터 타입에 들어갈 수 있는 크기만 할당할 수 있다.
byte는 -`128부터 127까지만 가능한데, a변수를 byte로 지정한 후 128을 할당하면 오류가 난다.
이때는 byte이상의 데이터타입(short, int 등)을 사용해줘야한다는 안내도 나온다.
- 각 데이터 타입이 컴퓨터 램에서 차지하는 크기가 다르기때문에 무조건 큰 데이터타입을 사용하면 용량 낭비.
- 내가 필요한 만큼의 크기를 생각해보고 그에 맞는 데이터타입을 골라 사용해야 한다.
또한 변수 a와 변수 b는 데이터의 값의 크기는 다르지만 같은 데이터 타입을 사용하므로 똑같이 8byte의 메모리를 사용한다.
long a = 2147483647;
long b = 1;
반대로 아래 변수 a와 변수 b는 같은 수를 저장하지만 다른 데이터 타입을 사용하므로 변수 b가 2배의 메모리를 사용한다.
int a = 2147483647;
long b = 2147483647;
따라서 변수에 들어올 수 있는 숫자의 최대 크기를 잘 판단해서 데이터 타입을 지정해야 메모리를 아낄 수 있다.
그러나 오늘날은 메모리의 용량이 늘어나 결과적으로 정수를 저장할 때는 int를 사용하면 대부분 가능하다.
2. 실수형 데이터 타입 비교
3. 문자형 데이터 타입
- char형 : 하나의 문자를 나타낼 수 있다.
- 2byte(16bit)메모리를 사용한다.
- 6글자의 char형은 12bit메모리를 차지한다.
'Java' 카테고리의 다른 글
[Java] 생활코딩 | 조건문 if, else (0) | 2022.09.11 |
---|---|
[Java] 생활코딩 | 상수와 데이터 타입 (0) | 2022.09.09 |
[Java] 생활코딩 | 변수의 선언과 할당, 정수, 실수, 문자열 (0) | 2022.09.09 |
[Java] 생활코딩 | 숫자, 문자와 문자열 (0) | 2022.09.09 |
[Java] 인텔리제이 사용하기 (0) | 2022.09.09 |