Chapter 02 변수(Varialbe)
2. 변수의 타입
기본형에는 모두 8개의 타입(자료형)이 있으며 크게 논리형, 정수형, 실수형으로 구분된다.
분류 | 타입 |
---|---|
논리형 | boolean |
true와 false 중 하나를 값을고 갖으며, 조건식과 논리적 계산에 사용된다. | |
문자형 | char |
문자를 저장하는 데 사용되며, 변수에 하나의 문자만 저장할 수 있다. | |
정수형 | byte, short, int, long |
정수를 저장하는데 사용되며, 주로 int가 사용된다.byte는 이진 데이터를 다룰 때 사용되며, short는 C언어와의 호환을 위해서 추가되었따. | |
실수형 | float, double |
실수를 저장하는데 사용되며, 주로 double이 사용된다. |
문자형인 char
는 문자를 내부적으로 정수(유니코드)로 저장하기 때문에 정수형과 별반 다르지 않으며, 정수형 또는 실수형과 연산도 가능하다.
반면에 boolean
은 다른 기본형과의 연산이 불가능하다.
즉, boolean
을 제외한 나머지 7개의 기본형은 서로 연산과 변화이 가능하다.
정수는 타입을 4가지나 제공한다.
각 타입마다 저장할 수 있는 값의 범위가 다르므로 저장할 값의 범위에 맞는 타입을 선택하면 되지만, 일반적으로 int
를 많이 사용한다. 왜냐하면, int
는 CPU가 가장 효율적으로 처리할 수 있는 타입이기 때문이다. 효율적인 실행볻는 메모리를 절약하려면, byte
나 short
을 선택하면 된다.
종류 / 크기 | 1 byte | 2 byte | 4 byte | 8 byte |
---|---|---|---|---|
논리형 | boolean | |||
문자형 | char | |||
정수형 | byte | short | int | long |
실수형 | float | double |
boolean
은true
와false
두가지 값만 표현할 수 있으면 되므로 가장 작은 크기인 1 byte.char
은 자바에서 유니코드(2 byte 문자체계)를 사용하므로 2 byte.byte
는 크기가 1 byte라서 byte.int
(4 byte)를 기준으로 짧아서short
(2 byte). 길어서long
(8 byte).
(short
↔️long
)float
는 실수값을 부동소수점(floating-point)방식으로 저장하기 때문에float
.double
은float
보다 두 배의 크기(8 byte)를 갖기 때문에double
.
실수형은 정수형과 저장형식이 달라서 같은 크기라도 훨씬 큰 값을 표현할 수 있으나 오차가 발생할 수 있다는 단점이 있다. 그래서 정밀도(precision)가 중요한데, 정밀도가 높을수록 발생할 수 있는 오차의 범위가 줄어든다.
float
의 정밀도는 7자리인데, 이것은 10진수로 7자리의 수를 오차없이 저장할 수 있다는 뜻이다.
실수형에서는 저장 가능한 값의 범위뿐만 아니라 정밀도도 타입의 선택의 중요한 기준이 된다.
📑 원본 자료
- Java의 정석(3판) [남궁 성/도우출판/2016]
- https://catsbi.oopy.io/6541026f-1e19-4117-8fef-aea145e4fc1b