Scala HashMap 多个值

标签 scala hashmap hashtable

我想用 int 键和字符串值实现一个哈希表。我尝试了以下方法:

import scala.collection.mutable.HashMap
val test_map = new HashMap[Int, String]
test_map += 10 -> "prog_1"
test_map += 20 -> "prog_2"
test_map += 25 -> "prog_3"
test_map += 15 -> "prog_4"
test_map += 10 -> "prog_8"
但是,test_map(10) 不是“prog_1”、“prog_8”,它只是“prog_8”。似乎这个哈希图不能有多个值。有没有一种简单的方法可以在 Scala 中创建多值哈希表?

最佳答案

您可以使用 MultiMap如果您不关心保留具有相同键的值的插入顺序:

import scala.collection.mutable.{ HashMap, MultiMap, Set }

val test = new HashMap[Int, Set[String]] with MultiMap[Int, String]

test.addBinding(10, "prog_1")
test.addBinding(20, "prog_2")
test.addBinding(25, "prog_3")
test.addBinding(15, "prog_4")
test.addBinding(10, "prog_8")

关于Scala HashMap 多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11004903/

相关文章:

Scala HashMap : iterate in insertion order?

Node.js Redis 获取 HashMap 中的所有值

java - 如何改进 : Given two integers, 返回它们共享的位数

java - scala/java : icon for button with a relative path

java - 了解八卦协议(protocol)

scala - akka 流 asyncBoundary 与 mapAsync

java - 使用 XMLOutputFactory 时是否可以指定 EOL 的行为?

java - 如何使用 LinkedList 更新 HashMap 中的值?

c - 在哈希表 C 中查找键

python-2.7 - python 2.7 模块 pandas 未安装 "cannot import name hashtable"