値がすでに存在するかどうかを調べるには、特定のキーのすべての値をチェックする必要があります。私は以下のコードを持っているので、常に最後の値がキーに追加されます。どのように値のリスト全体を反復処理するのですか?スカラハッシュマップで指定されたキーの値を繰り返し処理する
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) –