2.2.2 부동소수점 수
자바와 마찬가지로 코틀린도 IEEE 754 부동소수점 수(floating point number)를 따르는 Float와 Double을 제공한다. 이 둘은 각각 자바의 float와 double에 대응한다.
부동소수점 수 리터럴 중 가장 단순한 형태는 10진 소수 형태로, 정수 부분과 소수 부분을 나눠 소수점(.)을 찍어 놓았다.
val pi = 3.14 val one = 1.0
정수 부분이 비어있는 경우 정수 부분을 0으로 간주한다. 하지만 소수점을 남기면서 소수 부분을 생략할 수는 없다.
val quarter = .25 // 0.25 val one = 1. // Error: Expecting an element val two = 2 // 오류는 아니지만, 정수 리터럴임
코틀린은 과학적 표기법(scientific notation) 리터럴을 허용한다. 과학적 표기법에서는 e나 E 뒤에 10을 몇 번 거듭제곱하는지를 알려주는 숫자가 온다.
val pi = 0.314E1 // 3.14 = 0.314*10 val pi100 = 0.314E3 // 314.0 = 0.314*1000 val piOver100 = 3.14E-2 // 0.0314 = 3.14/100 val thousand = 1E3 // 1000.0 = 1*1000
과학적 표기법에서는 소수 부분(소수점 포함)을 생략할 수 있다.
자바 vs. 코틀린 자바 6+와 달리 코틀린에서는 Double이나 Float의 16진 리터럴을 지원하지 않는다.