Java中如何让一个集合不可改变?
Java8及之前:Collections工具类中提供的方法:unmodifiableXXX()
方法 | 参数列表 | 功能 |
---|---|---|
unmodifiableList() |
unmodifiableList(List<? extends T> list) |
返回指定list的不可修改视图 |
unmodifiableMap() |
unmodifiableMap(Map<? extends K,? extends V> m) |
返回指定map的不可修改视图 |
unmodifiableSet() |
unmodifiableSet(Set<? extends T> s) |
返回指定set的不可修改视图 |
unmodifiableCollection() |
unmodifiableCollection(Collection<? extends T> c) |
返回指定集合的不可修改视图 |
示例:
源码:
unmodifiableCollection()
源码
public static <T> Collection<T> unmodifiableCollection(Collection<? extends T>