qaq
不可变集合
- 创建以后不能修改长度和内容
- 将不能被修改的数据防御性地拷贝到不可变集合中
- 集合对象被不可信的库调用时,不可变形式是安全的
创建
List、Set、Map接口里,都有of方法可以创建不可变集合
细节
List:直接用Set:元素不能重复Map:元素不能重复,直接传键值对数量不超过10。超过10个用ofEntries方法
示例
1 | List<String> list = List.of("a", "b", "c", "d"); |
1 | Map<String, String> mp = Map.of("a", "A", "b", "B"); |
1 | //已有的Map |
另一种方法(jdk8忽略)
最方便的方式
1 | static <K, V> Map<K,V> copyOf(Map<? extends K, ? extends V> map) { |