El método removeRange() de ArrayList en Java se usa para eliminar todos los elementos dentro del rango especificado de un objeto ArrayList. Desplaza cualquier elemento posterior a la izquierda. Esta llamada acorta la lista por elementos (toIndex-fromIndex), donde toIndex es el índice final y fromIndex es el índice inicial dentro del cual se eliminarán todos los elementos. (Si toIndex==fromIndex, esta operación no tiene efecto)
Sintaxis:
removeRange(int fromIndex, int toIndex)
Parámetros:
hay dos parámetros:
1. fromIndex: índice de inicio desde el cual se eliminarán los elementos del índice.
2. toIndex: dentro del rango [fromIndex-toIndex), se eliminan todos los elementos.
Los parámetros son de tipo de datos int .
Devoluciones:
este método no devuelve ningún valor. Solo elimina todos los elementos dentro del rango especificado.
Errores:
indexOutOfBoundsException : si fromIndex o toIndex están fuera de rango (fromIndex = size() o toIndex > size() o toIndex < fromIndex)
Ejemplo 1 : demostración del uso del método removeRange()
Java
// 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); } }
Producción:
The list before using removeRange:[1, 2, 3, 12, 9, 13] The list after using removeRange:[3, 12, 9, 13]
Ejemplo 2 : programa para demostrar el error
Java
// 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); } }
Producción:
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)
Nota : el método removeRange(int fromIndex, int toIndex) es un método protegido en ArrayList. Se accede a un método protegido en clase, subclases y en un paquete, pero no público. Por lo tanto, extendemos la clase a arraylist.