所以,我有一个字符列表,我必须创建一个列表,说明每种字符数量
( List(a,a,a,a,b,b) => List ( (a,4), (b,3))
我想创建一个地图,首先将每个字符列为1
( (a->1), (a->1), (a->1), (a->1), (b->1), (b->1))
然后使用group by + tolist返回最终列表。问题是创建一个地图需要这种语言的PHD。
我试过
val m = xs.foldLeft(Map[Char,Int]()){c => c->1}
哪个不起作用。
xs map (x=> x-> 1) toMap
哪个编译但之后我无法对此地图做任何事情。
和xs.toMap(x,1)
哪个也不起作用。
有人可以告诉我应该如何处理吗?
答案 0 :(得分:4)
您可以使用groupBy
进行分组,然后查找每个组的计数:
list.groupBy(identity).mapValues(_.length)