Scala - 如何将3元组列表[(String,String,Int)]分组到List [List [(String,String,Int)]]

时间:2017-05-15 22:35:33

标签: scala pattern-matching

如何将上面提到的3元组列表拆分为List列表,其中具有相同初始字符串的元素组合在一起。

前 - :

scala> List((abc,b,1),(b,c,2),(abc,m,3),(b,d,3),(c,c,3)) => 
List(List((abc,b,1),(abc,m,3)),List((b,c,2),(b,d,3)),List(c,c,3))

如何在Scala中很好地实现这一点?

最好的问候

1 个答案:

答案 0 :(得分:2)

使用groupBy,它会为您提供String -> List的地图,然后在地图上调用values以获取列表:

list.groupBy(_._1).values.toList