2
到地圖我有一個類,看起來像這樣:轉換列表與重複鍵
case class Person(id : String, name : String, refId : String) {}
而且我有個人的名單。
我想有
鍵地圖= REFID
值=列表[人]具有相同REFID (重複鍵)
我所做的:
val persons = getPersons() // get the List from somewhere
val refMap = new mutable.HashMap[String,Seq[Person]]()
for (person<- persons){
refMap.put(person.refId,refMap.getOrElse(person.refId,new ArrayBuffer[Person]) :+ person)
}
這是我的第一個想法,它的工作原理,但我想要更多的Scala或更好的東西。你有好主意嗎?
我也試了一下這裏所寫的:Convert List of tuple to map (and deal with duplicate key ?)
但他們使用的元組,我無法要麼得到這項工作。 我也試過它將我的列表映射到元組第一個,但
1.我不想在無需重複2次遍歷列表(1次創建元組,1次創建映射)
2我試過,但我與元組失敗過
一個更好的代碼任何幫助將是很好