不可变集合
什么是不可变集合?
不可变集合,就是不可被修改的集合。
集合的数据项在创建的时候提供,并且在整个生命周期中都不可改变。否则报错。
为什么创建不可变集合?
如果某个数据不能被修改,把它防御性地拷贝到不可变集合中是个很好的实践。
或者当集合对象被不可信的库调用时,不可变形式是安全的。
如何创建不可变集合?
在List、Set、Map接口中,都存在of方法,可以创建一个不可变的集合。
方法名称 | 说明 |
---|---|
static <E> List<E> of(E…elements) | 创建一个具有指定元素的List集合对象 |
static <E> Set<E> of(E…elements) | 创建一个具有指定元素的Set集合对象 |
static <K , V> Map<K,V> of(E…elements) | 创建一个具有指定元素的Map集合对象 |
public static void main(String[] args) {
// 创建List不可变集合
List<Integer> nums1 = List.of(10, 40, 80, 100);
System.out.println(nums1); // [10, 40, 80, 100]
// 创建Set不可变集合, Set不可变集合强制要求不能输入相同的元素
Set<Double> nums2 = Set.of(10.7, 20.6, 40.7, 90.0);
System.out.println(nums2);
// 创建Map不可变集合
Map<String, Integer> info = Map.of("Java", 20, "Vue", 30, "React", 40);
System.out.println(info); // [10, 40, 80, 100]
}
注意: 不可变集合不能添加,不能删除,不能修改。
小结:
不可变集合的特点?
定义完成后不可以修改,或者添加、删除
如何创建不可变集合?
List、Set、Map接口中,都存在of方法可以创建不可变集合。
更多推荐
Java中的不可变集合介绍
发布评论