더북(TheBook)

각 이항 산술 연산마다 모든 가능한 수 타입 간의 연산을 지원하기 위한 변종이 함께 제공된다. 수 타입이 여섯 가지이므로 각 연산마다 6 × 6 = 36가지 버전이 있다는 뜻이다. 이로 인해 산술 연산에서 명시적인 타입 변환을 수행하지 않아도 여러 수 타입을 혼용할 수 있다. 이러한 산술 연산의 결과는 인자 중 더 큰 의미를 지니는 타입이 된다.

Double > Float > Long > Int > Short > Byte

대부분의 타입에서 이는 해당 타입이 표현할 수 있는 값의 범위가 더 넓다는 뜻이다. 하지만 항상 그렇지는 않다. 분명한 예로 Long에서 Float로 변환되는 경우를 들 수 있다. 이 경우 일부 유효 자리 숫자를 잃고 정밀도(precision)가 떨어지게 된다.

이로부터 다음을 알 수 있다.

byte + byte       // 2: Byte
int + byte        // 2: Int
int + int         // 2: Int
int + long        // 2: Long
long + double     // 2.5: Double
float + double    // 3.0: Double
float + int       // 2.5: Float
long + double     // 2.5: Double
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.