不可修改的集合通常是其他集合的只读视图(包装器)。您不能添加,删除或清除它们,但是基础集合可以更改。
不可变集合完全不能更改-它们不包装另一个集合-它们具有自己的元素。
这是番石榴的报价
ImmutableList
与
Collections.unmodifiableList(java.util.List<? extendsT>),它是仍然可以更改的单独集合的视图不同,的实例ImmutableList包含其自己的私有数据,并且永远不会更改。
因此,基本上,为了从可变的集合中获取不可变的集合,您必须将其元素复制到新集合中,并禁止所有操作。



