什么是不可变的集合?
就是长度与内容都不能变化的集合。
如何创建不可变的集合?
示例代码如下
List不可变集合
public class MyVariableParameter {
public static void main(String[] args) {
List<String> list = List.of("a", "b", "c", "d");
System.out.println(list);
//list.add("Q");//不能添加
// list.remove("a");//不能删除
// list.set(0,"A");//不能修改
// System.out.println(list);
//传统的添加方式
/*ArrayList<String> list2 = new ArrayList<>();
list.add("aaa");
list.add("aaa");
list.add("aaa");
list.add("aaa");*/
//集合的批量添加
//首先是通过调用List.of方法来创建个不合变的集合,of方法的形参就是一个可变参数
//再创建一个ArrayList集合,并把这个不可变的集合中所有的数据都添加到ArrayList中
ArrayList<String> list3 = new ArrayList<>(List.of("a","b","c","d"));
System.out.println(list3);
}
}
Set不可变集合
public class MyVariableParameter {
public static void main(String[] args) {
//传递的参数中,不能重复,所以该代码中,必须去掉一个"a"
Set<String> set = Set.of("a", "b", "c", "d","a");
System.out.println(set);
}
}
Map不可变集合1
public class MyVariableParameter {
public static void main(String[] args) {
Map<String, String> map = Map.of("zhangsan", "江苏", "lisi", "北京", "wangwu", "天津");
System.out.println(map);
}
}
Map不可变集合2
public class MyVariableParameter {
public static void main(String[] args) {
Map<String, String> map = Map.ofEntries(
Map.entry("zhangsan", "江苏"),
Map.entry("lisi", "北京")
);
System.out.println(map);
}
}
总结: