上海比较好的网站制作公司,游戏传奇,中国河北网站,百度关键词优化首选667seo不可变集合#xff1a;不可以被修改的集合
创建不可变集合的应用场景
如果某个数据不能被修改#xff0c;把它防御性地拷贝到不可变集合中是个很好的实践。当集合对象被不可信的库调用时#xff0c;不可变形式是安全的。
简单理解#xff1a;不想让别人修改集合中的内容…不可变集合不可以被修改的集合
创建不可变集合的应用场景
如果某个数据不能被修改把它防御性地拷贝到不可变集合中是个很好的实践。当集合对象被不可信的库调用时不可变形式是安全的。
简单理解不想让别人修改集合中的内容 不可变list集合代码演示
import java.util.List;
public class text {public static void main(String[] args) {//创建不可变集合ListStringlist List.of(张三,王五,找六);System.out.println(list.get(0));System.out.println(list.get(1));System.out.println(list.get(2));for(String s:list){System.out.println(s);}list.remove(王五);//不可变集合不能进行删除//这里代码会报错}
}
不可变set集合代码演示注意set集合无索引元素唯一。
import java.util.List;
import java.util.Set;
public class text {public static void main(String[] args) {//创建不可变集合SetString set Set.of(张三,李四,王五);for(String s:set){System.out.println(s);}set.remove(王五);//不可变集合不能进行删除//这里代码会报错}
}
不可变map集合代码演示注意
细节1:键是不能重复的
细节2:Map里面的of方法参数是有上限的最多只能传递20个参数10个键值对
import java.util.Map;
import java.util.Set;
public class text {public static void main(String[] args) {//创建不可变集合MapString,StringmapMap.of(a,1,b,2);SetString keys map.keySet();for(String key:keys){String valuemap.get(key);System.out.println(keyvalue);}}
}
创建Map的不可变集合键值对的数量超过10个
MapString,String m Map.copyOf(map);
1.不可变集合的特点
●定义完成后不可以修改或者添加、删除
2.如何创建不可变集合
●List、Set、Map接口中都存在of方法可以创建不可变集合
3.三种方式的细节
●List:直接用
●Set:元素不能重复
●Map:元素不能重复、键值对数量最多是10个。
超过10个用ofEntries方法或copyof的方法