[kotlin] 코틀린 리플렉션을 이용한 배열 정보 확인

코틀린에서 배열의 정보를 확인하고 다루는 방법은 다양합니다. 하지만 리플렉션을 이용하면 런타임 시에 배열의 세부 정보를 확인할 수 있습니다. 이번 포스트에서는 코틀린 리플렉션을 이용하여 배열의 정보를 확인하는 방법을 살펴보겠습니다.

배열 정보 확인하기

우선 배열 정보를 확인하기 위해 다음과 같이 샘플 배열을 생성합니다.

val array = arrayOf(1, 2, 3, 4, 5)

이제 이 배열의 정보를 리플렉션을 통해 확인해보겠습니다.

import kotlin.reflect.full.*

fun main() {
    val array = arrayOf(1, 2, 3, 4, 5)
    val kClass = array::class
    println("배열의 타입: ${kClass.simpleName}")
    println("배열의 요소 타입: ${kClass.javaObjectType.componentType.simpleName}")
}

위 코드에서는 먼저 array::class를 통해 배열의 KClass를 가져온 뒤, kClassjavaObjectType 속성을 통해 배열의 요소 타입을 확인합니다.

결과 확인

위 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

배열의 타입: Integer[]
배열의 요소 타입: int

이렇게 코틀린 리플렉션을 이용하여 배열의 정보를 확인할 수 있습니다.

결론

코틀린 리플렉션을 이용하면 배열을 포함한 다양한 객체의 정보를 런타임 시에 동적으로 확인할 수 있습니다. 배열의 요소 타입 등 세부 정보가 필요한 경우에는 리플렉션을 적극 활용하여 효율적으로 작업할 수 있습니다.

참고문헌: