Java Arraylist removeRange()的例子
Java中 ArrayList 的 removeRange() 方法用于从ArrayList对象中移除指定范围内的所有元素。它将任何后续的元素移到左边。这个调用使列表缩短了(toIndex-fromIndex)个元素,其中toIndex是结束索引,fromIndex是开始索引,所有元素都将被移除。(如果toIndex==fromIndex,这个操作没有效果)
语法 :
removeRange(int fromIndex, int toIndex)
参数 :
有两个参数 :
1. fromIndex : 要删除的索引元素的起始索引。
2. toIndex : 在范围[fromIndex-toIndex]内,所有元素都被删除。
参数是 int 数据类型。
返回 :
这个方法不返回任何值。它只删除指定范围内的所有元素。
错误 :
indexOutOfBoundsException: 如果fromIndex或toIndex超出范围 (fromIndex = size() or toIndex > size() or toIndex < fromIndex)
例子 1 : 展示 removeRange() 方法的用法
// Java program to demonstrate the
// working of removeRange() method
import java.util.*;
// extending the class to arraylist since removeRange()
// is a protected method
public class GFG extends ArrayList<Integer> {
public static void main(String[] args)
{
// create an empty array list
GFG arr = new GFG();
// use add() method to add values in the list
arr.add(1);
arr.add(2);
arr.add(3);
arr.add(12);
arr.add(9);
arr.add(13);
// prints the list before removing
System.out.println("The list before using removeRange:" + arr);
// removing range of 1st 2 elements
arr.removeRange(0, 2);
System.out.println("The list after using removeRange:" + arr);
}
}
输出:
The list before using removeRange:[1, 2, 3, 12, 9, 13]
The list after using removeRange:[3, 12, 9, 13]
例2 :演示错误的程序
// Java program to demonstrate the error in
// working of removeRange() method
import java.util.*;
// extending the class to arraylist since removeRange()
// is a protected method
public class GFG extends ArrayList<Integer> {
public static void main(String[] args)
{
// create an empty array list
GFG arr = new GFG();
// use add() method to add values in the list
arr.add(1);
arr.add(2);
arr.add(3);
arr.removeRange(1, 4); // error as 4 is out of range
System.out.println("The list after using removeRange:" + arr);
}
}
输出:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at java.util.ArrayList.removeRange(ArrayList.java:638)
at GFG.main(GFG.java:25)
注意 :removeRange(int fromIndex, int toIndex)方法是ArrayList的 保护方法 。一个受保护的方法可以在类、子类和包中被访问,但不能公开。因此,我们将该类扩展为arraylist。
极客教程