阅读量:0
Java中的List接口提供了subList方法来获取原列表的子列表。子列表可以对原列表进行修改,也可以通过子列表对原列表进行修改。下面是一些操作子列表的示例代码:
- 获取子列表:
List<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(3); list.add(4); List<Integer> subList = list.subList(1, 3); System.out.println(subList); // 输出 [2, 3]
- 修改子列表:
subList.set(0, 5); System.out.println(list); // 输出 [1, 5, 3, 4]
- 修改原列表:
list.set(2, 6); System.out.println(subList); // 输出 [6, 3]
- 添加元素到子列表:
subList.add(1, 7); System.out.println(list); // 输出 [1, 5, 7, 3, 4]
需要注意的是,对原列表进行结构性修改(如添加或删除元素)可能会使得子列表失效,导致ConcurrentModificationException异常。如果需要对原列表进行结构性修改,建议先将子列表转为新的列表再进行修改。