Java ArrayList removeRange()

removeRange() 方法的语法是

arraylist.removeRange(int fromIndex, int toIndex)

在这里,arraylist对象ArrayList 类的一个 对象


removeRange() 参数

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

  • fromIndex - 要移除元素的起始位置
  • toIndex - 要移除到的结束位置

removeRange() 返回值

removeRange() 方法不返回任何值。相反,它会移除 ArrayList 的一部分。

ArrayList 的这部分包含从 fromIndex 开始到 toIndex-1 处的元素。也就是说,toIndex 处的元素不包含在内。

注意:如果 fromIndextoIndex 超出范围,或者 toIndex < fromIndex,该方法将抛出 IndexOutOfBoundException


示例 1:Java ArrayList removeRange()

import java.util.*;

class Main extends ArrayList<String> {
    public static void main(String[] args) {
        // create an ArrayList
        Main arraylist = new Main();

        // add some elements to the ArrayList
        arraylist.add("Java");
        arraylist.add("English");
        arraylist.add("Spanish");
        arraylist.add("Python");
        arraylist.add("JavaScript");
        System.out.println("ArrayList: " + arraylist);

        // remove elements between 1 to 3
        arraylist.removeRange(1, 3);
        System.out.println("Updated ArrayList: " + arraylist);
    }
}

输出

ArrayList: [Java, English, Spanish, Python, JavaScript]
Updated ArrayList: [Java, Python, JavaScript]

removeRange() 方法是 protected 的。这意味着它只能在类/包/子类内部访问。这就是为什么在上面的示例中,Main 方法扩展了 ArrayList 类。

由于 Main 类继承了 ArrayList 的所有属性,我们可以使用 Main 类来创建 ArrayList。

然而,这在 Java 中并不常用。相反,我们通常将 ArrayList subList()ArrayList clear() 方法结合使用。


示例 2:移除多个元素

import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        // create an ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();

        // add elements to the ArrayList
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        numbers.add(6);
        System.out.println("ArrayList: " + numbers);

        // remove element between 1 to 3
        numbers.subList(1, 3).clear();
        System.out.println("Updated ArrayList: " + numbers);
    }
}

输出

ArrayList: [1, 2, 3, 4, 6]
Updated ArrayList: [1, 4, 6]

在上面的示例中,我们创建了一个名为 numbers 的 ArrayList。请注意以下行:

numbers.subList(1, 3).clear();

这里,

  • subList(1, 3) - 返回索引为12的元素
  • clear() - 移除 subList() 返回的元素

另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战