当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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()或toIndex> size()或toIndex

例子1:演示使用removeRange()方法

// Java program to demonstrate the 
// working of removeRange() method 
import java.util.*; 
  
// extending the class to arryalist 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 arryalist 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。



相关用法


注:本文由纯净天空筛选整理自Striver大神的英文原创作品 Arraylist removeRange() in Java with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。