0
我有一個對象,A包含另一個對象,B包含兩個字符串,stringOne和stringTwo。斯卡拉 - 基於列表成員變量值將列表轉換爲HashMap
考慮到我有A的列表/序列,
是否有可能建立從A的列表中選擇一個地圖,這導致A型的一個HashMap - >序列[B],其中發生的事情進入Seq [B]是具有相同的B.stringOne和B.stringTwo的B項目?
A和B是案例類。
我有一個對象,A包含另一個對象,B包含兩個字符串,stringOne和stringTwo。斯卡拉 - 基於列表成員變量值將列表轉換爲HashMap
考慮到我有A的列表/序列,
是否有可能建立從A的列表中選擇一個地圖,這導致A型的一個HashMap - >序列[B],其中發生的事情進入Seq [B]是具有相同的B.stringOne和B.stringTwo的B項目?
A和B是案例類。
你是正在尋找這樣的事情:
case class B(s1: String, s2: String)
case class A(b: B)
val ls = List(A(B("1","2")), A(B("3","4")), A(B("5","6")), A(B("1","2")))
ls.groupBy(identity).map({case (k,v) => (k, v.map(_.b))})
//Output: Map(A(B(1,2)) -> List(B(1,2), B(1,2)), A(B(3,4)) -> List(B(3,4)), A(B(5,6)) -> List(B(5,6)))
它通常是更好地_demonstrate_問題,用代碼,而不是試圖_describe_問題,用字。 – jwvh