변수의 자료형(Data Type)에는 크게 Primitive Type(기본 자료형)과 Reference Type(참조형)이 있다.
이번 포스팅에서는 Primitive Type(기본 자료형)에 대해서 알아보자.
<기본 자료형(Primitive Type)>
기본자료형에는 크게 수치형, 문자형, 논리형이 있고 자세한 내용은 아래와 같다.
▲ 위 자료를 보다시피 각각에는 종류와 크기들이 있다.
컴퓨터는 2진법 즉, 0과 1로써 모든 자료를 저장하고 읽기 때문에 1byte의 경우에는 이진법으로 변환 시 127이 되는 숫자만이 들어올 수 있는 것이다.
bit는 '최소 저장 단위' 이다. bit가 8개 모인 8bit = 1byte가 된다. 바이트가 모여서 1024byte가 되면 1KB가 되며
1024KB = 1MB / 1024MB = 1GB / 1024GB =1TB / 1024TB = 1PB 가 된다.
수치형에는 정수형과 실수형이 있으며 정수형부터 차례대로 알아보자.
<정수형>
정수형에는 byte, short, int, long 이렇게 네 가지의 자료형 종류가 있으며 각각의 크기는 점점 커진다.
정수형과 실수형을 관통하는 중요한 개념이 있는데, 다음과 같다.
원칙)★★★
▲ 원칙 2번의 예외에 의문이 들 것이다. why? 바로 기본 자료형 중 수치형의 대표 자료형은 int이기 때문이다.
쉽게 생각해서 기본형이 int이기 때문에 기본이 되는 int보다 작은 것들은 그냥 무시하고 int형으로 보겠다는 것
예제를 보면서 이해해보자.
▲ byte의 크기는 2진법으로 했을 시 최대 127의 숫자가 넣을 수 있기 때문에 127는 byte안에 충분히 넣을 수 있다.
하지만 원칙 2번에 의해 아래와 같은 경우에는 연산자체가 안되는 것이다.
▲ 위의 예시같은 경우는 너무너무 중요한 원칙2. 에 의해 출력시 error가 난다.
그렇다면 해결책은 뭘까? 바로 그릇의 크기인 자료형을 직접 지정하거나 바꾸어 주는 것이다.
해결책 예시를 보자
▲ 위와 같은 두 가지 방법을 통해 해결책을 제시 할 수 있다.
short의 경우도 똑같은 메커니즘에 의해 동작하고 해결할 수 있다.
그렇다면 기본형은 int와 그보다 큰 long형의 경우는 어떨까? 바로 다음과 같은 규칙에 따른다.
▲ 글 초반부에 존재하는 원칙)★★★ 을 따르는 것인데, 큰 자료형과 작은 자료형의 연산 원칙을 따르는 것이다.
아래의 예제를 보면서 이해해보자.
▲ 결국 관통하는 개념은 원칙이다.
결국 정수형을 이해하기 위해서는 원칙과 예외인 것이다. 원칙을 잘 이해하고 숙지하고 있으면 어떠한 장애물을 만나도 이해할 수 있을 것이다.
'Java' 카테고리의 다른 글
[Java]형변환(TypeCasting) (0) | 2022.02.24 |
---|---|
[Java]상수(Constant) (0) | 2022.02.24 |
[Java]변수의 자료형 (part.2 실수형) (0) | 2022.02.23 |
[Java]변수(Variable)의 개념 (0) | 2022.02.23 |
[Java]프로그램 구조 (0) | 2022.02.22 |