我有一个名为Group的类
class Group(id: Int, name: String, category: String) {
}
Run Code Online (Sandbox Code Playgroud)
我试图转换Array[Group]到Map[String, Seq[Group]]与category: String关键.Seq[Group]如果密钥不存在,我想创建一个空并添加组,否则更新Seq[Group].如果密钥已经存在,我不知道如何更新Seq.
groupBy会做到这一切.
arrayOfGroups.groupBy(_.category)
Run Code Online (Sandbox Code Playgroud)
结果将是一个Map[String, Array[Group]](因为原始容器是一个数组).数组不完全是一个Seq,所以如果你想要一个,你可能会这样做
arraysOfGroup.groupBy(_.category).mapValues(_.toSeq)
Run Code Online (Sandbox Code Playgroud)
您可以toSeq通过更精确的转换来替换它.它也有可能arrayOfGroup.toSeq.groupBy(_.category)
| 归档时间: |
|
| 查看次数: |
312 次 |
| 最近记录: |