List 的 subList(from,to) 方法 返回的仅仅只是List 的试图,当你试图去改变该试图的时候,原始List也会跟着相应的改变。
List<Integer> list=new ArrayList();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
System.out.println("原始"+list.size());
List partList=new ArrayList();
partList=list.subList(0,3);
partList.add(0,333);
System.out.println("截取"+partList.size());
如果想要不让原始List 改变的话 可以这么解决
List partList=new ArrayList(list.subList(0,3));