我需要Google Collection的组合ImmutableMap
和LinkedHashMap
—具有定义迭代次序的不可变映射。看起来ImmutableMap本身实际上已经定义了迭代次序,至少是its documentation says:Google Collections ImmutableMap迭代次序
一个不可变的基于散列的Map,具有可靠的用户指定的迭代次序。
但是没有更多的细节。快速测试表明这可能是真实的,但我想确保。不幸的是,快速查看源代码并不能帮助我。
我的问题是:我可以依赖ImmutableMap的迭代顺序吗?如果我做ImmutableMap.copyOf(linkedHashMap)
,它是否会具有与原始链接哈希映射相同的迭代顺序?那么由构建者创建的不可变映射怎么样?由于谷歌没有发现任何有用的东西,因此一些权威答案的链接将有所帮助。 (不,链接到源不计算在内)。
我相信藏品已经被折叠到番石榴图书馆。但ImmutableMap的文档也是一样的。 – Thilo 2010-09-28 08:06:24