上代码截取集合
public static void main(final String[] args) {
List<Object> lists = new ArrayList<Object>();
lists.add("1");
lists.add("2");
lists.add("3");
lists.add("4");
List<Object> tempList = lists.subList(2, lists.size());
}
1、截取注意 从0开始 包括左边的索引不包含右边的索引
2、缺陷:
上面代码如果此时改变了tempList 的值那么 lists的值也会跟着改变如
tempList.add("6");
那么lists的值也会增加6
3、上面所说的缺陷该如何解决?
List<Object> tempList = new ArrayList<Object>(lists.subList(2, lists.size()));
tempList.add("6");
如上所示,我们在截取lists时直接创建一个list,就不会让tempList的添加影响lists