如何从 Scala 中的三元组列表创建多重映射?

Mur*_*fin 1 scala

假设我有一个 tuple3 List[(A, B, C)] 的列表。将其转换为映射 Map[A, Map[B, List[C]]] 的多重映射的最佳方法是什么?

我知道如何使用 Tuple2 执行此操作,但是如何使用 Tuple3 执行此操作

Fed*_*tta 5

我唯一的建议是使用.mapValues(_.而不是.map(x => x._1 -> x._2.

list.groupBy(_._1).mapValues(_.groupBy(_._2).mapValues(_.map(_._3)))
Run Code Online (Sandbox Code Playgroud)