用例:Collection.singletonList与Collection.unmodifiableList

时间:2017-11-21 11:50:15

标签: java

我知道两个Collection方法都提供对返回列表的只读访问权限,并在修改时抛出异常。

我需要了解两者的用例,以便何时使用singletonList和unmodifiableList。

这可能会帮助我根据用法增加对两者的理解。

1 个答案:

答案 0 :(得分:3)

singletonList获取一个项目,并创建一个仅包含该项目的不可变列表。 unmodifiableList获取一个列表,并创建一个引用该列表的不可变列表。它类似于add和addAll之间的区别。一个拿一个项目,一个拿一个包含项目的列表。

因此,如果您有List<...> list,则singletonList (list).get(0)会返回list,但unmodifiableList (list).get(0)会返回list.get(0)。前者很少有用。