- 자바 자료형에는 크게 2가지로 기본자료형과 객체자료형으로 나뉩니다.
- 기본자료형은 또다시 8가지로 나뉘는데, byte, short, int, long, float, double, boolean, char 입니다.
- 객체자료형은 4가지로 나뉘어, 클래스, 배열, 인터페이스, 일급객체 입니다.
♟️ 위의 내용을 정리하면,,,
- 정수형
- byte : 1바이트는 8비트이고, 비트는 0과 1로의 값만 존재하고, 컴퓨터가 소통하는 언어입니다.
- short : 2바이트의 정수를 표현합니다.
- int : 4바이트의 정수를 표현하며, 가장 자주 사용하게 될 정수형 자료형입니다.
- long : 8바이트의 정수를 표현합니다.
- 문자형 : 한 문자를 표현하는 자료형으로, char가 있습니다.
- 실수형 : 소수점이하의 숫자가 있을 때 사용하는 자료형으로, float과 double이 있습니다.
- 논리형 : 참, 거짓 2가지 값만 존재하는 자료형으로, true와 false가 있습니다.
♟️ 아래 표는 기본자료형의 바이트를 정리한 표입니다.
| 정수형 | 문자형 | 실수형 | 논리형 | |
|---|---|---|---|---|
| 1byte | byte | boolean | ||
| 2byte | short | char | ||
| 4byte | int | float | ||
| 8byte | long | double |
- float형을 사용할 때 뒤에 'F' 또는 'f'를 붙입니다.
- long형을 사용할 때 뒤에 'L' 또는 'l'를 붙입니다.
♟️ 이때, F나 L은 식별자라고 하며, 컴퓨터는 식별자를 통해 숫자를 float형인지 long형인지 식별할 수 있습니다.
- 자동형변환 : 이름 그대로 자동으로 형변환이 일어난다는 의미로, 묵시적 형변환과 같은 말입니다.
- 대게 바이트가 작은 것에서 큰 것으로 자동형변환이 발생하게 되는데, 이때 자료 손실이 없기 때문입니다.
- byte => short => int => long => float => double
char => int
♟️ long과 float의 자동형변환
long은 8바이트, float는 4바이트이지만, long은 정수이고, float은 실수이기 때문에 자동형변환이 가능합니다.
- 강제형변환 : 강제로 형변환을 주겠다는 의미로, 명시적 형변환과 같은 말입니다. 캐스팅한다고도 말합니다.
- 강제형변환 할 때, 자료 손실에 주의해야 합니다.
♟️강제형변환 예시
char ch = 'A';
int num = (int) ch;