코틀린

[Youtube DiMo] 3강. 형 변환

iseohyun 2022. 4. 28.

목차

    https://youtu.be/tvtNch-GPEU

     

     

    1. 형 변환

    명시적 형변환 : "to자료형"으로 작성 (암시적 형변환 지원 안함)
    var a : Int = 12345
    var b : Long = a.toLong()

     

     

    2. 배열

    fun main() {
        var intArr = arrayOf(1,2,3,4,5)
        var nullArray = arrayOfNulls<Int>(5) // 빈 배열 생성
        
        intArr[1] = 6
        println(intArr[1])
        println(intArr[3])
    }

     

     


    덧1. 암시적 형변환? 명시적 형변환?

    컴퓨터 입장에서는 1과 1이 서로 다를 수 있습니다. 왜냐하면 공간을 2byte잡아먹는 1과 4byte잡아먹는 1이 주는 정보의 양이 다르기 때문인데요.
    기존의 코딩룰은 이를 인간의 인지능력과 비슷한 관점과 비슷하게 편의기능으로 암시적 형변환을 지원했습니다. 즉, 1과 000001은 같다라는 것입니다. 하지만, 긴 코딩의 역사속에서 이러한 편의상 형 변환으로 인한 에러가 등장했고, 코틀린에서는 이를 지원하지 않는 쪽으로 정책을 정한 것입니다. 아마도 후대에는 똑같은 객체인데 왜 toInt, toLong은 있는데 toObject, toAnimal은 없는 거지?라고 생각할지도 모릅니다.

     

    댓글