跳到主要内容

Java ArrayList subList() 方法

subList() 方法的语法是:

arraylist.subList(int fromIndex, int toIndex)

这里,arraylistArrayList 类的一个对象。

subList() 参数

subList() 方法接受两个参数。

  • fromIndex - 提取元素的起始位置
  • toIndex - 提取元素的结束位置

subList() 返回值

  • 返回从给定 arraylist 中提取的一部分元素
  • 如果 fromIndex 小于 0 或 toIndex 大于 arraylist 的大小,则抛出 IndexOutOfBoundsException
  • 如果 fromIndex 大于 toIndex,则抛出 IllegalArgumentException

注意:arraylist 的这一部分包含从 fromIndex 开始的元素,并延伸到 toIndex-1 处的元素。也就是说,toIndex 处的元素不包括在内。

使用 ArrayList subList() 方法访问 arraylist 的一部分

示例 1:从 ArrayList 获取子列表

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<String> languages = new ArrayList<>();

// 向 ArrayList 添加一些元素
languages.add("JavaScript");
languages.add("Java");
languages.add("Python");
languages.add("C");
System.out.println("ArrayList: " + languages);

// 从 1 到 3 的元素
System.out.println("SubList: " + languages.subList(1, 3));
}
}

输出

ArrayList: [JavaScript, Java, Python, C]
SubList: [Java, Python]

在上述示例中,我们使用了 subList() 方法来获取索引 1 到 3(不包括 3)的元素。

注意:如果你想知道如何获取指定元素的索引,请访问 Java ArrayList indexOf()

示例 2:将单个 ArrayList 分割成两个 ArrayList

import java.util.ArrayList;

class Main {
public static void main(String[] args) {
// 创建一个 ArrayList
ArrayList<Integer> ages = new ArrayList<>();

// 向 ArrayList 添加一些元素
ages.add(10);
ages.add(12);
ages.add(15);
ages.add(19);
ages.add(23);
ages.add(34);
System.out.println("年龄列表: " + ages);

// 18 岁以下的年龄
System.out.println("18 岁以下的年龄: " + ages.subList(0, 3));

// 18 岁以上的年龄
System.out.println("18 岁以上的年龄: " + ages.subList(3, ages.size()));
}
}

输出

年龄列表: [10, 12, 15, 19, 23, 34]
18 岁以下的年龄: [10, 12, 15]
18 岁以上的年龄: [19, 23, 34]

在上述示例中,我们创建了一个名为 ages 的 arraylist。这里,我们使用了 subList() 方法将 arraylist 分割成两个 arraylist:18 岁以下18 岁以上

请注意,我们使用了 ages.size() 方法来获取 arraylist 的长度。要了解更多关于 size() 方法的信息,请访问 Java ArrayList size()