Arrays.asList使用注意事项
1. 不能直接使用Arrays.asList来转换基本类型数组; //解决1,装箱 int[] arr1 = {1, 2, 3};//直接声明为包装类则可使用Arrays.asList直接转 List list1 = Arrays.stream(arr1).boxed().collect(Collectors.toList()); 2. Arrays.asList返回的List是Arrays的内部类ArrayList(继承自AbstractList没有重写add方法,而父类add方法则是抛出UnsupportedOperationException)不支持增删操作; 3. 对原始数组的修改会影响获取的List; //解决2和3,实现解耦,不再影响 List list = new ArrayList(Arrays.asList(arr));
List.subList使用注意事项