ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ Kotlin ] 자료형 - 정수형과 실수형
    Kotlin 2020. 7. 29. 16:29

     

    Kotlin은 불변형(val)가변형(var)로 변수를 선언할 수 있습니다.

    만약 사용할 변수의 값이 변경되지 않아야 된다면(immutable) val을 사용하고 변경될 수 있다면(mutable) var을 사용합니다.

     

    변수를 선언할 때 [ 선언키워드 변수 이름: 자료형 = 값 ]의 형식으로 선언합니다. 하지만 컴파일러가 추론할 수 있는 type의 경우 [ 선언키워드 변수이름 = 값 ]으로 선언해도 컴파일러가 알아서 결정해줍니다.

    fun main() {
        val username : String = "moco"
        var count : Int = 3
        
        // 컴파일리가 추론할 수 있는 type은 생략해도 된다.
        var age = 10
        
        println("username : $username")
    }

     

    기본형 자료형과 참조형 자료형 모두 사용하는 Java와 달리 Kotlin은 참조형 자료형을 사용합니다.

    코드를 작성할 때는 참조형만 사용하지만 JVM에서 실행할 때는 성능 최적화를 위해 코틀린 컴파일러가 기본형으로 대체하여 사용합니다.

     

    1. 기본형 자료형은 가공되지 않은 순수한 자료형으로 프로그래밍 언어에 내장되어 있습니다. Java int, long, float, double 등이 있습니다.
    2. 참조형 자료형은 객체를 생성하고 동적 공간에 대이터를 둔 다음 이것을 참조하는 자료형입니다. String, Date 등이 있습니다.

     

     정수형 ( Byte, Short, Int, Long )

    형식 자료형 크기 값의 범위
    정수 자료형 Long 8bytes ( 64bits ) -2^63 ~ 2^63 -1
    Int 4bytes ( 32bits ) -2,147,483,648
    ~ 2,147,483,647
    Short 2bytes ( 16bits ) -32,768~32,767
    Byte 1bytes ( 8bits ) -128~127
    부호 없는 자료형 ULong 8bytes 0 ~ 2^64 -1 
    UInt 4bytes 0 ~ 2 ^32 -1
    UShort 2bytes 0 ~ 2^16 - 1
    UByte 1bytes 0 ~ 2^8 -1

    자료형을 추론할 때 기본적으로 크기에 상관없이 Int형으로 추론합니다. 이 때 접미사나 접두사를 이용하여 자료형을 강제할 수 있습니다.

     

     실수형 ( Double, Float )

    실수의 경우 자료형을 명시하지 않으면 Double형으로 추론합니다. Float형으로 지정하고 싶으면 식별자 F를 실수 옆에 붙입니다.

    형식 자료형 크기 값의 범위
    실수형 Double 8bytes ( 64bits ) 1.79E-308 ~ 1.79E+308
    Float 4bytes ( 32bits ) 3.4E-38 ~ 3.4E+38

    출처 : https://www.edwith.org/boostcourse-mo-kotlin-basic1/lecture/61118/

     

    부동 소수점 ( Flaoting-point )

    32bits와 64bits의 부동 소수점 표현  ( 출처 : https://www.edwith.org/boostcourse-mo-kotlin-basic1/lecture/61118/ )

    부동 소수점 방식이란 실수를 가수, 지수로 나누어 표현하는 방식입니다.

     

     

    출처

    'Kotlin' 카테고리의 다른 글

    [ Kotlin ] 람다식 ( Lambda )  (0) 2020.08.04
    [ Kotlin ] 함수형 프로그래밍  (0) 2020.08.03
    [ Kotlin ] 함수  (0) 2020.08.03
    [ Kotlin ] 자료형 - 비교, 검사, 변환  (0) 2020.07.29
    [ Kotlin ] 자료형 - 논리 자료형과 문자형  (0) 2020.07.29

    댓글

Designed by Tistory.