2.2.1 정수 타입

    코틀린에는 정수를 표현하는 네 가지 기본 타입이 있다(표 2-2).

    ▼ 표 2-2 정수 타입

    이름

    크기(바이트)

    범위

    대응하는 자바 타입

    Byte

    1

    -128 .. 127

    Byte

    Short

    2

    -32768 .. 32767

    Short

    Int

    4

    -231 .. 231-1

    Int

    Long

    8

    -263 .. 263-1

    Long

    어떤 정수 타입 값을 표현하는 가장 간단한 리터럴은 10진수다.

    val n = 12345

    코틀린 1.1부터는 자바 7+와 마찬가지로 수 리터럴에 _를 넣어서 가독성을 높일 수 있다. 리터럴이 아주 큰 수를 나타낼 때 _가 유용하다.

    val n = 34_721_189

    리터럴 자체의 타입은 그 수를 2진수로 표현했을 때의 크기에 따라 Int일 수도 있고 Long일 수도 있다. 하지만 범위만 맞으면 수 리터럴을 크기가 더 작은 타입의 변수에 대입해도 된다.

    val one: Byte = 1                                // OK
    val tooBigForShort: Short = 100_000              // Error: too big for Short
    val million = 1_000_000                          // OK: Int로 타입이 추론됨
    val tooBigForInt: Int = 10_000_000_000           // Error: too big for Int
    val tenBillions = 10_000_000_000                 // OK: Long으로 타입이 추론됨
    val tooBigForLong = 10_000_000_000_000_000_000   // Error: too big for Long
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.