나를 기록하다
article thumbnail
Published 2022. 11. 6. 16:54
[JAVA] 데이터 타입 Java
반응형

1. 데이터 타입

 

1 bit: 가장 작은 데이터 단위

1 byte = 8 bit(비트)

1 kilobyte = 1024 byte(바이트)

1 megabyte = 1024 kilobyte(킬로바이트)

1 gigabyte = 1024 megabyte(메가바이트)

1 terabyte = 1024 gigabyte(기가바이트)

1 petabyte = 1024 terabyte(테라바이트)
1 exabyte = 1024 petabyte(페타바이트)

1 zettabyte = 1024 exabyte(엑사바이트)

 

2. 데이터 타입 비교

1) 정수형

데이터 타입 메모리의 크기 표현 가능 범위
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

일반적으로 int를 많이 사용하지만 메모리를 절약하기 위해 byte를 사용하는 경우도 존재한다.

 

byte district = 1; // 강원도

 

행정구역(경기도, 전라도, 강원도 ...)처럼 그 수가 사실상 정해져 있고, 늘어나도 100을 넘을 가능성이 없는 정보의 경우 byte로 표현하면 1byte의 크기만을 사용하게 된다. 하지만 아래와 같이 long을 사용한다면 8배나 많은 메모리를 사용하게 된다.

 

long district = 1;

 

byte population = 50000000; -> 에러 발생 -> int를 쓰는 것이 합리적임

 

즉 어떤 숫자를 저장하느냐에 따라서 사용하는 메모리의 크기가 달라지는 것이 아니고 어떤 데이터 타입으로 변수를 선언했느냐에 따라서 사용하는 메모리의 크기가 달라지는 것이다. 결국, 변수에 들어올 수 있는 숫자의 최대 크기를 잘 판단해서 데이터 타입을 지정해야 귀한 메모리의 용량을 아낄 수 있다. 하지만 오늘날은 메모리의 용량이 늘어났고, 또 어떤 데이터형을 사용할 것이냐는 문제를 판단하기 위해서는 여러 가지가 고려되어야 한다. 결과적으로 말해서 정수를 저장할 때는 int를 사용하면 된다. int형을 처리할 때 CPU의 처리속도가 빠르고, int는 충분히 큰 수를 표현할 수 있는 데이터 타입이기 때문이다.

 

2) 실수형

float 4 byte ±3.4E-38~3.4E+38
double 8 byte ±1.7E-308~1.7E+308
 

실수형은 float와 double이 있지만 실수를 사용할 때는 double을 사용하도록 하자.

 

3) 문자

char 2 byte 모든 유니코드 문자

 

반응형

'Java' 카테고리의 다른 글

[C] 경찰 조서 작성 프로젝트  (0) 2022.11.27
[JAVA] 상수의 데이터 타입  (1) 2022.11.06
[JAVA] 주석과 세미콜론  (0) 2022.11.06
[JAVA]변수  (0) 2022.11.06
[JAVA]숫자, 문자와 문자열, 이스케이프  (0) 2022.11.06
profile

나를 기록하다

@prao

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

profile on loading

Loading...