Java ArrayList subList() 方法

IT 文章2年前 (2023)发布 小编
0 0 0

学习如何从现有 ArrayList 中获取子列表。我们将使用 ArrayList.subList() 方法来获取数组列表对象的子列表。

1.ArrayList subList() API

subList() 方法返回位于指定的 fromIndex(包括)和 toIndex(不包括)之间的此列表的部分视图。

public List<E> subList(int fromIndex, int toIndex)

该方法的参数为:

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

  • fromIndex:现有数组列表中的起始索引,包括在内。
  • toIndex:现有数组列表中的最后一个索引,不包括在内。

请注意,对子列表中对象所做的任何更改也将反映在原始数组列表上。

2.指定索引之间的子列表

下面的 Java 程序从现有子列表获取一个子列表。我们正在获取从索引 2 到 6 的子列表。

请注意,数组列表的索引从 0 开始。

ArrayList<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
ArrayList<Integer> sublist = list.subList(2, 6);
System.out.println(sublist); // [2, 3, 4, 5]

3.从指定索引到列表末尾的子列表

如果我们想要从指定索引到列表末尾获取一个子列表,那么在方法的第二个参数中传递数组列表的长度。

ad

AI 工具导航

优网导航旗下AI工具导航,精选全球千款优质 AI 工具集

ArrayList<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
System.out.println(list.subList(2, list.size())); // [2, 3, 4, 5, 6, 7, 8, 9]

4.从原始列表中删除子列表

当我们有数组列表的子列表视图时,我们也可以使用这个子列表来从数组列表中删除多个项,因为更改会反映在两个列表中。

ArrayList<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
list.subList(2, 6).clear();
System.out.println(list); // [0, 1, 6, 7, 8, 9]
© 版权声明

相关文章

暂无评论

暂无评论...