Kotlin - 以实用的方式从平面列表中构建列表图。

问题描述 投票:0回答:1

我有一个由对象组成的Kotlin平面列表,类似于......。

    data class Someone(var name: String, var age: Int)

    val someoneList = listOf<Someone>(Someone("Joe", 12), Someone("Bill", 15), Someone("Nancy", 12))

...我想简单地将其转换为一个地图,键是年龄,值是一个名字的列表.我很确定有一种Kotlin方法可以做到这一点,但我对我能找到的关于association,associationBy和所有这类东西的例子有点困惑!

谢谢你的帮助

VR

kotlin
1个回答
4
投票

Kotlin有 groupBy 函数,取两个参数,键选择器和值选择器lambdas

val someoneList = listOf<Someone>(Someone("Joe", 12), Someone("Bill", 15), Someone("Nancy", 12))
val grouped = someoneList.groupBy ({ it.age }, {it.name})
© www.soinside.com 2019 - 2024. All rights reserved.