[kotlin] 코틀린(Kotlin) 타입 추론과 스마트 캐스트
코틀린은 정적 타입 지정 언어이지만, 타입 추론을 지원하여 코드를 간결하게 작성할 수 있습니다. 또한, 스마트 캐스트를 활용하여 코드의 안전성을 높일 수 있습니다.
코틀린의 타입 추론
코틀린에서는 변수의 타입을 명시적으로 선언하지 않아도 초기화된 값에 따라 변수의 타입이 추론됩니다.
예를 들어, 다음과 같이 변수를 선언할 수 있습니다.
val name = "John" // name은 String으로 추론됨
위 예제에서 name
변수의 타입을 명시적으로 지정하지 않았지만, “John”이라는 문자열 값에 의해 name
변수의 타입이 자동으로 String
으로 추론됩니다.
코틀린의 타입 추론은 코드를 간결하게 작성할 수 있도록 도와줍니다.
코틀린의 스마트 캐스트
코틀린은 스마트 캐스트를 통해 타입 안전성을 높일 수 있습니다.
예를 들어, 다음과 같이 is
연산자를 사용하여 타입을 검사하고, 해당 변수를 바로 해당 타입으로 사용할 수 있습니다.
fun printLength(obj: Any) {
if (obj is String) {
println(obj.length) // obj는 자동으로 String 타입으로 캐스트됨
}
}
위 예제에서 obj
변수가 String
타입인지 검사한 후, 조건이 참이면 obj
를 String
타입으로 자동으로 캐스트하여 length
프로퍼티에 접근할 수 있습니다.
스마트 캐스트를 사용하면 타입 변환을 명시적으로 처리할 필요가 없어져 코드를 더욱 간결하게 만들 수 있습니다.
코틀린의 타입 추론과 스마트 캐스트를 적절히 활용하면 코드의 가독성과 안전성을 높일 수 있습니다.
이상으로 코틀린의 타입 추론과 스마트 캐스트에 대해 알아보았습니다.
참고문헌: 코틀린 공식 문서