scala - 为什么 Scala 不可变的 HashMap 方法返回一个 Map?

标签 scala hashmap immutability

我在使用 scala.collection.immutable.HashMap 的更新方法时遇到问题。我看不出它返回 Map 而不是 HashMap 的原因。如何获得添加了新键值对的新 HashMap?

最佳答案

这是预期的行为。 HashMap作为 Map 的特定实现最有用涉及使用哈希表进行查找。

通常,你会说 var values: Map[String, Any] = new HashMap ,然后坐下来使用它,就好像它是一个普通的 ol' 不可变的 Map .

在您使用 new 之后,您是否有理由让您的代码知道它是一个 HashMap?像上面那样吗?

关于scala - 为什么 Scala 不可变的 HashMap 方法返回一个 Map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2618532/

相关文章:

java - 无法让 log4j 在游戏中运行!框架 2.2.1(scala 项目)

c++ - C++中是否可以继承operator()?

java - HashMap:查找下一个较低的键

java - HashMap 值未附加到 ListView

java - jit 会优化新对象吗

python - 为什么元组在 Python 中不可变?

scala - 如何在 Spark-Scala 中创建具有已定义架构的行?

scala - 部分应用和返回函数之间有区别吗?

scala - 对于 `case class Cc(a: Int, b: Int) extends MyTraitA` , `MyTraitA` 与 `Product` 和 `Serializable` 特征一起出现在哪里?

python - 无法理解 python 函数中的不可变、可变、作用域