더북(TheBook)

withIndex()는 표준 라이브러리가 List에 대해 제공하는 확장 함수다. 이 함수는 컬렉션의 값을 IndexedValue라는 타입의 객체에 담아서 반환하며, 이 객체를 구조 분해할 수 있다.

Destructuring/LoopWithIndex.kt

import atomictest.trace

fun main() {
  val list = listOf('a', 'b', 'c')
  for ((index, value) in list.withIndex()) {
    trace("$index:$value")
  }
  trace eq "0:a 1:b 2:c"
}

구조 분해 선언은 지역 varval에만 적용할 수 있으며, 클래스 프로퍼티를 정의할 때는 사용할 수 없다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.