我需要檢查給定鍵的所有值以查看該值是否已經存在。通過下面的代碼,我總能得到最後一個值。如何迭代整個值列表?遍歷scala散列映射中給定鍵的值
val map = scala.collection.mutable.HashMap.empty[Int, String]
map.put(0, "a")
map.put(0, "b")
map.put(0, "c")
map.put(0, "d")
map.put(0, "e")
map.put(0, "f")
for ((k, v) <- map) {println("key: " + k + " value: " + v)}
輸出:
map: scala.collection.mutable.HashMap[Int,String] = Map()
res0: Option[String] = None
res1: Option[String] = Some(a)
res2: Option[String] = Some(b)
res3: Option[String] = Some(c)
res4: Option[String] = Some(d)
res5: Option[String] = Some(e)
key: 0 value: f
res6: Unit =()
所以你想有某種*歷史*您地圖? –
映射不能包含同一個鍵的多個值。最後一個覆蓋前一個。您可能想使用MultiMap(http://www.scala-lang.org/api/2.9.0/scala/collection/mutable/MultiMap.html) –