在Kotlin中,可以使用groupBy函数和mapValues函数对列表中的项进行分组和求和。
val people = listOf(
Person("Alice", 25),
Person("Bob", 30),
Person("Charlie", 25),
Person("David", 30),
Person("Eve", 25)
)
val groupedPeople = people.groupBy { it.age }
val sumByAge = groupedPeople.mapValues { it.value.size }
这将返回一个新的Map,其中键是年龄,值是该年龄分组中的人数。
完整代码示例:
data class Person(val name: String, val age: Int)
fun main() {
val people = listOf(
Person("Alice", 25),
Person("Bob", 30),
Person("Charlie", 25),
Person("David", 30),
Person("Eve", 25)
)
val groupedPeople = people.groupBy { it.age }
val sumByAge = groupedPeople.mapValues { it.value.size }
println(sumByAge)
}
输出结果:
{25=3, 30=2}
以上代码示例中,我们使用了自定义的Person类来表示每个人的姓名和年龄。你可以根据自己的需求修改代码中的类和属性。另外,如果你需要在腾讯云上进行Kotlin开发,可以参考腾讯云函数计算(SCF)服务,其提供了Serverless环境和支持多种编程语言的能力。具体信息请查看腾讯云函数计算产品介绍:https://cloud.tencent.com/product/scf。
领取专属 10元无门槛券
手把手带您无忧上云