List中的subLIst()方法可以截取父数组中指定下标范围形成一个新的数组。但注意:这个新数组代表的是父数组的一部分,改变它就会改变父数组中的对应部分。
Arrays中的asList()方法需要注意的地方:它并不是将数组转化为一个List对象,而是以List的方式对数组进行操作。也就是说,通过这个方法得到的list,本质上也是这个数组本身,而数组是定长的,所以这个list不能做增删操作,否则会报UnsupportedOperationException
如果需要将数组转为一个船新的集合List引用:
- 先将数组调用asList得到一个集合:List list1 = 数组.asList();
- 然后声明一个新的集合 List list2 = new ArrayList();
- 然后list2.addAll(list1);//将集合1中的元素添加到集合2中
或
- 先将数组调用asList得到一个集合:List list1 = 数组.asList();
- 然后声明一个新的集合 List list2 = new ArrayList(list1);//丢list1进去即可