코틀린에서 구조분해를 이용해 맵 자료형 iteration을 편리하게 할 수 있습니다
val binaryReps = TreeMap<Char, String>()
for (c in 'A'..'F') {
binaryReps[c] = Integer.toBinaryString(c.code)
}
for ((letter, binary) in binaryReps) {
println("$letter: $binary")
}
예제입니다
for문 안에서 (k, v) in map 이런식으로 사용할 수 있습니다
파이썬 사용자는 "엥 그거 .items() 쓰면 다 되는거자나 뭐가 신기함?" 할 수도 있지만..
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
// ...
}
자바에서는 destructuring이 안되기 때문에 이렇게 Map.Entry를 써야 합니다 ㅠ
반응형
'프로그래밍 > Kotlin' 카테고리의 다른 글
[Kotlin] Extension Property (확장 프로퍼티) (0) | 2022.03.21 |
---|---|
[Kotlin] Extension function (확장 함수) (0) | 2022.03.21 |
[Kotlin] Range, Progression (0) | 2022.03.20 |
[Kotlin] 삼항 연산자 (ternary operator) (0) | 2022.03.20 |
[Kotlin] when expression (0) | 2022.03.20 |