본문 바로가기

Programming/Android_Kotlin

Array의 toList()와 asList()

Array를 List로 변환하는 중에 Array의 메서드로 toList()와 asList()가 있는 것을 보고 무슨 차이점이 있는 건지 궁금해 검색해봤다.

1. toList()

toList()는 대상 Array를 복사해 새로운 인스턴스로 반환한다.

 

val array = arrayOf(1, 2, 3)
val list = array.toList()

array[0] = 4
println(list) // 1, 2, 3

2. asList()

asList()는 대상 Array와 동일한 배열 요소를 공유하는 List를 반환한다.

 

val array = arrayOf(1, 2, 3)
val list = array.asList()

array[0] = 4
println(list) // 4, 2, 3

 

toList()와 달리 대상 Array의 원소를 변경하면 list의 원소도 변경되는 것을 확인할 수 있다.