【发布时间】:2019-04-18 15:06:31
【问题描述】:
我有:
val intsPerChar: List[(Char, List[Int])] = List(
'A' -> List(1,2,3),
'B' -> List(2,3)
)
我想得到一个整数与他们有映射关系的字符的映射。即,我想得到:
val charsPerInt: Map[Int, List[Char]] = Map(
1 -> List('A'),
2 -> List('A', 'B'),
3 -> List('A', 'B')
)
目前,我正在做以下事情:
val numbers: List[Int] = l.flatMap(_._2).distinct
numbers.map( n =>
n -> l.filter(_._2.contains(n)).map(_._1)
).toMap
有没有更不明确的方式来做到这一点?理想情况下是某种groupBy。
【问题讨论】:
标签: scala