removeRange()
方法的语法是:
arraylist.removeRange(int fromIndex, int toIndex)
这里,
arraylist 是
ArrayList
类的对象。
removeRange() 参数
removeRange()
方法有两个参数。
removeRange() 返回值
removeRange()
方法不返回任何值。相反,它删除了一部分 arraylist。
arraylist 的部分包含从
fromIndex 开始的元素,一直延伸到
toIndex-1 的元素。也就是说,不包括
toIndex 处的元素。
注意: 该方法抛出 IndexOutOfBoundException,如果 fromIndex 或 toIndex 超出范围或 toIndex < fromIndex。
示例 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 的数组列表。注意这一行,
numbers.subList(1, 3).clear();
这里,
subList(1, 3)
-返回索引 1 和 2 处的元素
clear()
-删除 subList()
返回的元素