JDK9对集合添加的优化
import java.util.List;
import java.util.Map;
import java.util.Set;
/*
JDK9的新特性:
List接口,Set接口,Map接口:里边增加了一个静态的方法of,可以给集合一次性添加多个元素
static <E> List<E> of (E... elements)
使用前提:
当集合中存储的元素的个数已经确定了,不在改变时使用
注意:
1.of方法只适用于List接口,Set接口,Map接口,不适用于接接口的实现类
2.of方法的返回值是一个不能改变的集合,集合不能再使用add,put方法添加元素,会抛出异常
3.Set接口和Map接口在调用of方法的时候,不能有重复的元素,否则会抛出异常
*/
public class Demo01JDK9 {
public static void main(String[] args) {
List<String> list = List.of("a", "a", "a", "a", "a", "a");
System.out.println(list);
// list.add("w");//UnsupportedOperationException,不支持操作异常
//Set<String> set = Set.of("","b","b","b");//IllegalArgumentException,非法参数异常,有重复的元素
Set<String> set = Set.of("a", "b");//不重复即可
System.out.println(set);
//如果继续添加会报不支持操作异常
//list.add("w");//UnsupportedOperationException,不支持操作异常
//key值不能重复,会报非法参数异常
//Map<String, Integer> map = Map.of("张三",18,"张三",19,"王五",20);//IllegalArgumentException,非法参数异常,有重复的元素
Map<String, Integer> map = Map.of("张三",18,"李四",19,"王五",20);
System.out.println(map);
//map.put("马六",19);//UnsupportedOperationException,不支持操作异常
}
}