如何在Kotlin中使用GROUP BY进行计数(*)?
假设我有以下类的对象列表如何在Kotlin中使用GROUP BY进行计数(*)?,kotlin,higher-order-functions,Kotlin,Higher Order Functions,假设我有以下类的对象列表 class Contact( val name: String // ... ) 我想检索一个映射,它将一个名称映射到它的出现次数 在基于SQL的数据库上,我将查询: SELECT name, count(*) FROM Contact GROUP BY name; 在具有高阶功能的Kotlin中,执行此操作的最佳方法是什么?如果联系人的类型为List,则可以执行以下操作: val numOccurencesMap = contacts.groupi
class Contact(
val name: String
// ...
)
我想检索一个映射
,它将一个名称映射到它的出现次数
在基于SQL的数据库上,我将查询:
SELECT name, count(*) FROM Contact GROUP BY name;
在具有高阶功能的Kotlin中,执行此操作的最佳方法是什么?如果联系人的类型为
List
,则可以执行以下操作:
val numOccurencesMap = contacts.groupingBy { it.name }.eachCount()
numocurencesmap
将属于Map
类型