
코틀린 컬렉션은 개발자가 간결하고 표현력 있는 코드를 작성할 수 있도록 강력한 기능을 제공합니다. 긴 루프를 작성하는 대신, 코틀린은 간단하고 읽기 쉬운 함수로 복잡한 작업을 수행할 수 있게 해줍니다. 코틀린으로 안드로이드 앱을 개발하는 경우, 다음과 같은 컬렉션 함수를 자주 사용하게 될 것입니다:
map
filter
reduce
forEach
groupBy
이 가이드는 실제 프로젝트에서 사용할 수 있는 실용적인 예제와 함께 빠른 Kotlin 컬렉션 치트 시트를 제공합니다.
Tip:대부분의 경험 많은 코틀린 개발자들은 코드가 더 짧고 유지보수가 용이해지기 때문에 이러한 컬렉션 함수에 크게 의존합니다.
코틀린의 컬렉션은 다음과 같은 데이터 그룹을 다룰 수 있습니다:
Lists
Sets
Maps
예시 목록:
val numbers = listOf(1,2,3,4,5)
여기서부터 Kotlin은 데이터를 변환하거나 처리하는 데 유용한 많은 기능을 제공합니다.
map 은 컬렉션의 각 요소를 변환합니다.
Example:
val numbers = listOf(1,2,3)
val doubled = numbers.map {
it * 2
}Result:
[2,4,6]
필터 함수는 조건에 맞는 요소를 선택합니다.
Example:
val numbers = listOf(1,2,3,4,5)
val evenNumbers = numbers.filter {
it % 2 == 0
}Result
[2,4]
forEach 는 요소를 반복하는데 사용합니다.
Example:
numbers.forEach {
println(it)
}모든 요소에 대해 작업을 수행해야 할 때 forEach를 사용하세요.
reduce 요소들을 하나의 결과로 결합합니다.
Example:
val numbers = listOf(1,2,3,4)
val sum = numbers.reduce { acc, i ->
acc + i
}Result
10
groupBy 조건에 따라 요소를 그룹화합니다.
Example:
val numbers = listOf(1,2,3,4,5)
val grouped = numbers.groupBy {
it % 2 == 0
}Result
{false=[1,3,5], true=[2,4]}
| Function | Purpose |
|---|---|
| map | transform elements |
| filter | select elements |
| forEach | iterate elements |
| reduce | combine values |
| groupBy | group elements |
"어떤 것을 완전히 알려거든 그것을 다른 이에게 가르쳐라."
- Tryon Edwards -