在Kotlin中,groupBy函数用于根据指定的字段对集合进行分组,并返回一个Map,其中键是分组字段的值,值是属于该分组的元素列表。同时,我们可以使用sumBy函数计算指定字段的总和。
下面是一个示例代码:
data class Person(val name: String, val age: Int, val salary: Double)
fun main() {
val people = listOf(
Person("Alice", 25, 50000.0),
Person("Bob", 30, 60000.0),
Person("Charlie", 25, 55000.0),
Person("Dave", 30, 65000.0)
)
val groupedPeople = people.groupBy { it.age }
val sumOfSalaries = people.sumByDouble { it.salary }
println("Grouped People: $groupedPeople")
println("Sum of Salaries: $sumOfSalaries")
}
输出结果如下:
Grouped People: {25=[Person(name=Alice, age=25, salary=50000.0), Person(name=Charlie, age=25, salary=55000.0)], 30=[Person(name=Bob, age=30, salary=60000.0), Person(name=Dave, age=30, salary=65000.0)]}
Sum of Salaries: 230000.0
在这个例子中,我们创建了一个Person类,包含姓名、年龄和薪水字段。然后,我们创建了一个包含四个Person对象的列表。通过使用groupBy函数,我们将人员按照年龄进行分组,得到一个Map,其中键是年龄,值是属于该年龄组的人员列表。接着,我们使用sumByDouble函数计算了所有人员的薪水总和。
对于Kotlin中的groupBy函数和sumBy函数,腾讯云没有直接相关的产品或链接地址。这些函数是Kotlin语言本身提供的标准库函数,用于集合操作和数据处理。
领取专属 10元无门槛券
手把手带您无忧上云