1

Java での不変のツリー マップの実装を探しています。これにより、同一の部分を共有してコピー オン ライト スタイルの変更が可能になります。したがって、本質的には、ImmutableJSが JavaScript に対して、Java に対して行うこととまったく同じです。

ImmutableJS の仕組みに慣れていない人がいる場合は、Java で次のようにしてほしいと思います。

ImmutableTreeMap<String, String> map = new ImmutableTreeMap<>();
ImmutableTreeMap<String, String> map1 = map.put("hello", "world");
ImmutableTreeMap<String, String> map2 = map1.put("foo", "bar");
// the base maps should still remain the same
assertEquals(0, map.size());
assertEquals(1, map1.size());

上記の例でmap2は、 を格納するツリーの部分をコピーせず、その部分をhello -> world再利用します。

利用可能なそのような実装はありますか、それとも最初から作成する必要がありますか?

4

1 に答える 1