본문 바로가기
  • BLG-ZYNGIROK-모토-꿈꾸며-배우고-나누며-이루다
ICT/Java

Java | 문법 변수 | 6가지 기본형 데이터 타입 이정돈 알아두자

by dazwischen 2023. 3. 10. 22:48
반응형

Java의 6가지 기본 데이터 타입에 대한 글이다.

Java Data Ttype - Primitive Type

자바는 데이터 타입을 좀 깊게 알고 있어야 하는 언어이다. 사용할 때 마다 데이터 타입을 규정하고 올바르지 않을 경우 에러가 나기도 한다. 대신 잘 알고만 있으면 실수를 찾아내는 속도나 이해하는데 모를 때 보다 훨씬 낫다. 그렇기 잘 모른다면 기회가 날 때마다 잘알아두려고 노력해야 한다.

Java 문법 데이터 타입 썸네일 이미지이다.
Java 문법 데이터 타입

기본형 타입

자바의 데이터 타입은 총 6개로 이루어져 있다. 일단 큰 그룹으로 나눠 이해하고 마지막에 다시 한 번 정리해 보도록 하자. 6가지 데이터 타입을 유사한 것끼리 묶어본다면 4가지로 나눌 수 있을 것 같다.

  • 논리타입 - boolean
  • 문자타입 - char
  • 정수타입 - int, byte, short, long
  • 실수타입 - float, double

총 4가지로 분류해서 정수형이 4개 실수형이 2개이다. 하나씩 살펴보도록 하자.

boolean

불리언은 참 거짓 두가지 정보만 담을 수 있는 데이터 타입이다. 참은 1, 거짓은 0으로 저장한다. 이를 위해 필요한 데이터 공간으 1비트이다. 다. 하지만 자바에서는 1비트짜리 데이터 타입을 사용하진 않고 실제로는 8bit인 1byte에 저장한다.

char

문자형 타입인 char이다. 문자라는 영어 단어인 character의 앞의 4글자로 만든 이름이다. 주의할 점은 문자열과 문자를 구분하는 것이다. 문자열은 문자의 나열이다. 즉 문자형인 char는 'A', '가', '0'등과 같이 문자 하나씩을 담는 데이터 타입이다. 크기는 2byte이다.

특징은 문자를 저장하지만 메모리에 실제 저장하는 값은 정수값이다. 그냥 컴퓨터가 사람에게 보여줄 때만 문자로 바꿔서 보여주는 것이다. 실제로 정수와 연산도 가능하고, 문자끼리도 진짜 숫자처럼 연산이 가능하다.

정수형

정수형에는 총 4가지가 있다.

byte

바이트 타입은 이름그대로 1byte의 저장공간을 차지하고 정수를 저장하는 데이터 타입이다. 자바에서의 특징은 byte 타입의 정수끼리 더하고 빼도 결과는 int형이라는 것이다.

short

short 타입은 int보다 저장공간이 작기 때문에이다. 역시 정수를 저장하는 데이터 타입이고 크기는 byte의 2배 int의 절반인 2byte이다.

int

int는 Java에서 기본적으로 사용하는 정수 데이터 타입이다. 4byte의 크기를 갖고 있다. 4byte는 비트로 계산하면 총 32bit이다. 32개의 칸이 하나의 int를 결정한다. 이중 가장 첫번째 칸은 부호를 결정하고 나머지 31칸에 0 또는 1을 넣어서 정수를 저장한다.

long

long은 int보다 긴 정수형 데이터 타입이다. 정수보다 2배큰 8byte의 저장공간을 갖고 있다. 통상적으로 20억이 넘는 정수를 다룬다면 int 대신 long을 사용하면 된다.

실수형

실수형 데이터 타입은 두가지가 있다.

float

float는 int와 같은 크기인 4byte의 데이터 타입이다. float는 영어로 떠다니다라는 뜻인데, 소수점의 위치가 자유자재로 변하면서 수를 표현해서 붙여진 이름이다.

double

double은 float보다 2배 큰 8byte의 데이터 타입이다.

정리1 - 크키로 보는 데이터 타입

  1byte 2byte 4byte 8byte
논리형 boolean      
문자형   char    
정수형 byte short int long
실수형     float double

한 칸 옆으로 갈 때마다 2배씩 데이터가 커지는 걸 볼 수 있다.

정리2 - 데이터로 다시 분류해보자

위에서 크게 4가지 데이터 타입이 있다고 했다. 그런데 자세히 살펴보면 정수랑, 실수는 수인게 맞고, 문자형은 정수로 저장하고 수처럼 연산이 되니까 결국 정수이고, boolean도 0또는 1로 저장하니까 또 결국 정수이다. 이제 알고서 데이터를 다시 분류해 보면 자바는 크게 정수와 실수로 나눌 수 있다.

정수 실수

이 때 정수형에는 0과 1을 저장하는 논리형 데이터 타입 boolean과 문자를 숫자로 저장하는 문자형 데이터 타입 char가 포함된다. 표로 정리하면 아래와 같다.

(결국) 정수형 데이터
boolean char    
byte short int long

그리고 나머지 실수 타입 두가지도 표로 정리하면 아래와 같다.

실수형 데이터
float double

 

반응형

댓글