尝试从字符列表中生成映射到其频率的唯一字符列表 - 例如:
List('a','b','a') -> List(('a',2), ('b',1))
因此,只需在控制台中乱搞,就可以了:
val l = List('a', 'b', 'c', 'b', 'c', 'a')
val s = l.toSet
s.map(i => (i, l.filter(x => x == i).size))
但是,仅通过组合最后两行来缩短不是吗?
l.toSet.map(i => (i, l.filter(x => x == i).size))
给出错误“缺少参数类型”。
有人可以解释为什么 Scala 抱怨这种语法吗?