Java是否有纯粹的函数不可变Map实现?

时间:2013-02-01 16:28:23

标签: java functional-programming

我在Java中有一个包含许多键/值对的Map。

我想创建一个带有额外键/值对的Map版本,但不会丢失旧版本。

简单的解决方案是复制旧的Map,然后添加其他键/值对,但我知道有不可变的Map算法可以更有效地实现这一点。

有人能指出我在vanilla Java中使用的这种实现(即不是Clojure或Scala库)吗?

3 个答案:

答案 0 :(得分:2)

https://pcollections.org/处的馆藏图似乎提供了有效的持久馆藏实施。

答案 1 :(得分:0)

你不能调用Map.putAll(Map other)吗?我认为JVM可以有效地实现这一点。

答案 2 :(得分:0)

您可以使用java.util.Properties,使用默认值功能。