[kotlin] 배열을 특정 값을 기준으로 그룹화하는 방법은?
groupBy
함수는 컬렉션의 요소를 지정된 키로 그룹화하여 Map 형태로 반환합니다. 이를 사용하여 배열을 그룹화할 수 있습니다.
아래 예제를 통해 배열을 특정 값을 기준으로 그룹화하는 방법을 알아보겠습니다:
fun main() {
val numbers = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val groups = numbers.groupBy { it % 2 == 0 }
println(groups)
}
위 코드의 결과는 다음과 같습니다:
{false=[1, 3, 5, 7, 9], true=[2, 4, 6, 8, 10]}
해당 예제에서는 numbers
배열을 홀수와 짝수로 그룹화했습니다. groupBy
함수는 it % 2 == 0
를 기준으로 요소를 그룹화하여 Map으로 반환하였습니다.
위 코드에서는 불리언 값을 사용하여 그룹을 구분했지만, 기준이 될 값이 숫자나 문자열일 수도 있습니다. groupBy
함수는 어떠한 유형의 값을 기준으로 그룹화하던지 사용할 수 있습니다.
더 자세한 내용은 Kotlin 공식 문서의 groupBy
함수를 참조하시기 바랍니다.