我有以下的代碼來破壞一個元組:規則上使用CASE語句,在斯卡拉
val xs = List(('a', 1), ('a', 2), ('b', 3), ('b', 4))
我想變成一個Map這一點。例如Map('a' -> Seq(1,2), 'b' -> Seq(3,4))
。於是我開始寫的轉型:
xs.groupBy(_._1) map {
case (k, v) => (k, v.map(_._2))
}
爲什麼地圖後支架需要一個{
。當我開始時,我認爲我可以做到以下幾點:
xs.groupBy(_._1).map(case (k, v) => (k, v.map(_._2)))
但是,這並沒有編譯。
順便說一句,你可以使用'mapValues'。 – incrop
你有沒有例子? – andyczerwonka
@andyczerwonka你的最後一行將是'xs.groupBy(_._ 1).mapValues(v => v.map(_._ 2))' –