0
考慮以下幾點:轉換列表[地圖[字符串,地圖[字符串,INT]]以圖[INT,INT]在斯卡拉
val t: List[Map[String, Map[String, Int]]] = List(
Map("a" -> Map("m" -> 1, "l" -> 21)),
Map("a" -> Map("m" -> 2, "l" -> 22)),
Map("a" -> Map("m" -> 3, "l" -> 23)),
Map("a" -> Map("m" -> 4, "l" -> 24))
)
我想要的結果:
Map(1->21,2->22,3->23,4->24)
我至今是:
val tt = (for {
(k,v) <- t
newKey = v("m")
newVal = v("l")
} yield Map(newKey -> newVal)).flatten.toMap
但是,這並不類型檢查,所以我在想念着一些基本的瞭解,因爲我無法理解爲什麼不呢?
我的問題是:
- 爲什麼是我的代碼錯誤?
- 做我想要的轉換最習慣的方式是什麼?