这更像是一个好奇心问题。假设我为 Collections.unmodifiableMap() 提供了一个访问顺序设置为 true 的 LinkedHashMap。由于读取实际上是在修改 map 。这是否意味着在某些情况下 unmodifiableMap() 返回的 View 实际上是可修改的?
public class MyApp { /** * @param args */ public static void main(String[] args) { Map<String, String> m = new LinkedHashMap<String, String>(16,.75f,true); Collections.unmodifiableMap(m); }
}
最佳答案
map 正在 self 修改。 Collections.unmodifiableMap()
只为 Map 提供了一个装饰器,它不允许修改,它不会使 Map 本身不可修改。
关于java - Collections.unmodifiablemap() 和读取也修改的集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6309113/