首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >计算字母的出现次数,并将字典放入列表中

计算字母的出现次数,并将字典放入列表中
EN

Stack Overflow用户
提问于 2019-03-26 03:14:27
回答 1查看 41关注 0票数 1

我正在尝试计算字符串流中字母的出现次数,然后为列表中的每个字符串放置映射( "letter"->计数)。

代码语言:javascript
复制
def checksum(ipt: Stream[String]) =  ipt.foldLeft(List(Map("x"->1)))( (n: 
List[Map[String, Int]], m: String)  => n ++ 
m.split("").groupBy(identity).mapValues(_.size).toMap)

它给出了问题:

代码语言:javascript
复制
 Expression of type List[Equals] doesn't conform to expected type List[Map[String, Int]]

怎么了?就像对每个字符串都这样做没有问题:

代码语言:javascript
复制
 def checksum(ipt: Stream[String]) =  ipt.foreach( (m: String)  => println(m.split("").groupBy(identity).mapValues(_.size)))

它提供了类似这样的东西

代码语言:javascript
复制
val s = "bababc"
val d = "abbcde"
checksum(List(s,d).toStream)
out: 
Map(b -> 3, a -> 2, c -> 1)
Map(e -> 1, a -> 1, b -> 2, c -> 1, d -> 1)

但是现在我该如何在列表中隐藏所有这些地图呢?我不能使用vars,需要在一个表达式中使用它。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55344949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档