ArrayList es parte del marco de la colección y está presente en el paquete java.util. Nos proporciona arreglos dinámicos en Java. Sin embargo, puede ser más lento que las arrays estándar, pero puede ser útil en programas donde se necesita mucha manipulación en la array. Esta clase se encuentra en el paquete java.util . Con la introducción y las actualizaciones en las versiones de Java, los métodos más nuevos están disponibles si vemos que las expresiones lambda perceptivas de Java8 y los conceptos de secuencias no estaban disponibles antes, ya que se introdujo en la versión de Java 8, por lo que tenemos más formas de operar sobre Arraylist para realizar operaciones. Aquí discutiremos una forma de eliminar un elemento de un ArrayList.
Al eliminar elementos de ArrayList, podemos estar operando para eliminar elementos sobre índices o mediante valores que se encuentran allí en un ArrayList. Discutiremos ambas formas a través de la interpretación a través de un programa java limpio.
Métodos:
Hay 3 formas de eliminar un elemento de ArrayList como se indica, que más adelante se revelarán de la siguiente manera:
- Usando el método remove() por índices (predeterminado)
- Usando el método remove() por valores
- Usando el método remove() sobre iteradores
Nota: No se recomienda usar ArrayList.remove() al iterar elementos.
Método 1: Usar el método remove() por índices
Es un método predeterminado tan pronto como usamos cualquier método sobre la estructura de datos, básicamente opera sobre índices solo, por lo que cada vez que usamos el método remove(), básicamente estamos eliminando elementos de los índices de un ArrayList.
La clase ArrayList proporciona dos métodos remove() sobrecargados.
- remove(int index): Acepta el índice del objeto a ser removido
- remove(Object obj): Acepta el objeto a ser removido
Averigüemos con la ayuda de los ejemplos que se proporcionan a continuación de la siguiente manera:
Ejemplo:
Java
// Java program to Remove Elements from ArrayList // Using remove() method by indices // Importing required classes import java.util.ArrayList; import java.util.List; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Creating an object of List interface with // reference to ArrayList class List<Integer> al = new ArrayList<>(); // Adding elements to our ArrayList // using add() method al.add(10); al.add(20); al.add(30); al.add(1); al.add(2); // Printing the current ArrayList System.out.println(al); // This makes a call to remove(int) and // removes element 20 al.remove(1); // Now element 30 is moved one position back // So element 30 is removed this time al.remove(1); // Printing the updated ArrayList System.out.println(al); } }
[10, 20, 30, 1, 2] [10, 1, 2]
Ahora que hemos visto eliminar elementos en un ArrayList a través de los índices anteriores, ahora veamos que el parámetro pasado se considera un índice. Cómo eliminar elementos por valor.
Método 2: Usar el método remove() por valores
Ejemplo:
Java
// Java program to Remove Elements from ArrayList // Using remove() method by values // Importing required classes import java.util.ArrayList; import java.util.List; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Creating an object of List interface with // reference to ArrayList List<Integer> al = new ArrayList<>(); // Adding elements to ArrayList class // using add() method al.add(10); al.add(20); al.add(30); al.add(1); al.add(2); // Printing the current ArrayList System.out.println(al); // This makes a call to remove(Object) and // removes element 1 al.remove(Integer.valueOf(1)); // This makes a call to remove(Object) and // removes element 2 al.remove(Integer.valueOf(2)); // Printing the modified ArrayList System.out.println(al); } }
Producción :
[10, 20, 30,1 ,2] [10, 20, 30]
Nota: No se recomienda usar ArrayList.remove() al iterar elementos.
Además, el nuevo Integer ( int_value) ha quedado obsoleto desde Java 9, por lo que es una mejor idea usar Integer.valueOf (int_value) para convertir un entero primitivo en un objeto entero.
Método 3: Usar el método Iterator.remove()
Esto puede conducir a ConcurrentModificationException Al iterar sobre elementos, se recomienda utilizar el método Iterator.remove() .
Ejemplo:
Java
// Java program to demonstrate working of // Iterator.remove() on an integer ArrayList import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class GFG { // Main driver method public static void main(String[] args) { // Creating an ArrayList List<Integer> al = new ArrayList<>(); // Adding elements to our ArrayList // using add() method al.add(10); al.add(20); al.add(30); al.add(1); al.add(2); // Printing the current ArrayList System.out.println(al); // Creating iterator object Iterator itr = al.iterator(); // Holds true till there is single element // remaining in the object while (itr.hasNext()) { // Remove elements smaller than 10 using // Iterator.remove() int x = (Integer)itr.next(); if (x < 10) itr.remove(); } // Printing the updated ArrayList System.out.print(al); } }
[10, 20, 30, 1, 2] [10, 20, 30]
Este artículo es una contribución de Nitsdheerendra . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA