kotlin

kotlin Cast - 형변환

slow333 2023. 2. 7. 18:47

Smart cast

val obj1: Any = "I am a string"
if (obj1 !is String) {
    println("not a string")
} else {
    // obj 가 자동으로 String으로 casting 됨
    println(obj1.length.toString() + "의 길이를 갖습니다.")
}

val str1 : String = obj1 as String
println(str1.length)

val obj2: Any = 1234
// as? 를 사용하면 compile 단계에서 type 불일치를 찾을 수 있음
val str2: String = obj2 as? String
println(str2)

as? 를 사용하면 compile 단계에서 type 불일치를 찾을 수 있음

'kotlin' 카테고리의 다른 글

kotlin - lambda  (0) 2023.02.13
kotlin Array  (0) 2023.02.07
kotlin collection  (0) 2023.02.07
kotlin OOB- inheretance  (0) 2023.02.07
kotlin Data classes  (0) 2023.02.06