Ich muss alle Werte eines bestimmten Schlüssels überprüfen, um zu sehen, ob der Wert bereits vorhanden ist. Mit dem Code, den ich unten habe, bekomme ich immer den letzten Wert, der dem Schlüssel hinzugefügt wurde. Wie man über die gesamte Werteliste iteriert?iterieren durch die Werte des angegebenen Schlüssels in der Scala-Hash-Map
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)}
output:
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 =()
, so dass Sie eine Art * Geschichte * haben wollen Ihre Karte? –
Eine Karte darf nicht mehr als einen Wert für denselben Schlüssel enthalten. Die letzte überschreibt die vorherige. Vielleicht möchten Sie stattdessen MultiMap verwenden (http://www.scala-lang.org/api/2.9.0/scala/collection/mutable/MultiMap.html) –