Java 集合 获取ArrayList的子列表

来源:这里教程网 时间:2026-02-17 20:13:08 作者:

在本教程中,我们将了解如何从现有ArrayList获取子列表。我们将使用ArrayList类的subList方法来完成它。

List subList(int fromIndex, int toIndex)

这里fromIndex是包容性的,toIndex是独占的。关于这种方法,我在本文末尾分享了一些重要的观点。

从ArrayList获取子列表的示例

以下示例中的注意事项:
subList方法返回一个列表,因此将子列表存储在另一个ArrayList中,我们必须以与下面示例中相同的方式对返回值进行类型转换。另一方面,如果我们将返回的子列表存储到列表中,则无需键入转换(请参阅示例)。

package beginnersbook.com;import java.util.ArrayList;import java.util.List;public class SublistExample { public static void main(String a[]){     ArrayList<String> al = new ArrayList<String>();     //Addition of elements in ArrayList     al.add("Steve");     al.add("Justin");     al.add("Ajeet");     al.add("John");     al.add("Arnold");     al.add("Chaitanya");     System.out.println("Original ArrayList Content: "+al);     //Sublist to ArrayList     ArrayList<String> al2 = new ArrayList<String>(al.subList(1, 4));     System.out.println("SubList stored in ArrayList: "+al2);     //Sublist to List     List<String> list = al.subList(1, 4);     System.out.println("SubList stored in List: "+list);  }}

输出:

Original ArrayList Content: [Steve, Justin, Ajeet, John, Arnold, Chaitanya]SubList stored in ArrayList: [Justin, Ajeet, John]SubList stored in List: [Justin, Ajeet, John]

注意:

如果指定的索引超出了ArrayList的范围(fromIndex > 0 || toIndex < size),则subList方法抛出IndexOutOfBoundsException。
IllegalArgumentException – 如果起始索引大于终点索引(fromIndex < toIndex)。

相关推荐