KOTLIN · 기초 문법
Destructuring & 구조 분해
컴포넌트 함수를 통해 객체를 여러 변수로 한 번에 분해합니다.
기초 문법중급destructuringcomponentNPairdata-class
핵심 설명
컴포넌트 함수를 통해 객체를 여러 변수로 한 번에 분해합니다.
Kotlin code
// Pair, Triple
val pair = Pair("Kotlin", 2024)
val (lang, year) = pair
println("$lang $year")
// data class는 자동으로 componentN() 생성
data class Point(val x: Int, val y: Int)
val (x, y) = Point(10, 20)
println("x=$x, y=$y")
// 특정 항목 무시: _
data class User(val id: Int, val name: String, val email: String)
val (_, name, _) = User(1, "Alice", "a@test.com")
println(name)
// Map 순회에서 destructuring
val map = mapOf("a" to 1, "b" to 2)
for ((key, value) in map) {
println("$key → $value")
}
// withIndex destructuring
listOf("x", "y", "z").forEachIndexed { idx, item ->
println("$idx: $item")
}학습 팁
data class의 구조 분해는 주 생성자 선언 순서에 의존합니다. 나중에 프로퍼티 순서를 바꾸면 구조 분해 코드가 조용히 잘못됩니다.
주의할 점
data class 프로퍼티 순서를 변경하면 구조 분해 변수의 의미가 바뀝니다. 팀 코드에서는 Named arguments를 더 안전하게 사용하세요.
자주 묻는 질문
Destructuring & 구조 분해란 무엇인가요?
컴포넌트 함수를 통해 객체를 여러 변수로 한 번에 분해합니다.
Destructuring & 구조 분해 학습 시 주의할 점은 무엇인가요?
data class 프로퍼티 순서를 변경하면 구조 분해 변수의 의미가 바뀝니다. 팀 코드에서는 Named arguments를 더 안전하게 사용하세요.
Continue Learning
Kotlin 학습을 이어가세요
총 200개의 독립 HTML 학습 문서 중 하나입니다. 각 문서는 고유 URL과 canonical 메타데이터를 가집니다.