Java

[Java] 생활코딩 | 데이터의 크기, 데이터 타입

kyra 2022. 9. 9. 14:45

https://youtu.be/i1OkU7XYSAU

 


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메모리를 차지한다.