El método ListIterator.remove() elimina el último elemento de la lista que fue devuelto por las posiciones del cursor next() o previous(). Se puede llamar solo una vez por llamada al siguiente o al anterior. Solo se puede realizar si la operación — add(E) no ha llamado después de la última llamada al siguiente o al anterior.
El trabajo interno en ArrayList se muestra a continuación, ya sea su eliminación o adición de elementos. Consideración de la eliminación genérica de elementos antes del cambio a ListIterator .
Sintaxis:
listIterator.remove();
- Índice a eliminar
- Valor de índice que se eliminará
Ilustración:
Entrada: ArrayList = [“Rojo”, “Blanco”, “Azul”, “Rosa”]
Salida: ArrayList = [“Rojo”, “Azul”, “Rosa”]
Eliminar el elemento «Blanco» o el segundo elemento en ArrayList.
Entrada : ArrayList = [“Rojo”, “Blanco”, “Azul”, “Rosa”]
Salida: ArrayList = [“Rojo”, “Blanco”, “Azul”, “Rosa”]
Eliminar el elemento «Negro» o el quinto elemento en ArrayList. Dado que el elemento que debe eliminarse no está en ArrayList, no se eliminará nada.
Procedimiento: para eliminar un elemento de ArrayList usando ListIterator es el siguiente:
- Crear una instancia de ArrayList new ArrayList<String>();
- Agregue elementos en los colores de ArrayList usando colors.add («Rojo»);
- Crea una instancia de ListIterator de colors.listIterator();
- Imprima los elementos de la lista antes de eliminar elementos.
- Incremente el iterador con listIterator.next() y muévase al elemento que desea eliminar;
- Elimina el elemento con listIterator.remove();
- Imprime la lista después de eliminar el elemento. En este ejemplo, hemos eliminado el elemento “Blanco.
Transacciones de estado al eliminar un elemento de ArrayList
Caso 1: Uso de bucles si se conoce el índice del elemento a eliminar
Java
// Java Program to Remove an element from ArrayList // using ListIterator // Importing ArrayList and ListIterator classes // of java.util package import java.util.ArrayList; import java.util.ListIterator; public class GFG { // Main driver method public static void main(String[] args) { // Create an ArrayList ArrayList<String> colors = new ArrayList<String>(); // Add elements to above ArrayList colors.add("Red"); colors.add("White"); colors.add("Blue"); colors.add("Pink"); colors.add("Black"); colors.add("Green"); // ArrayList ={Red, White, Blue, Pink, Black, Green} ListIterator<String> listIterator = colors.listIterator(); System.out.println("List Before remove() method = " + colors); // Removing ith element from ArrayList // using listiterator // Suppose i = 3, so traversing // till that element for (int i = 0; i < 3; i++) { listIterator.next(); } // Removes one more element from list // 'blue' element is removed from arraylist listIterator.remove(); // Printing the final ArrayList after removing // elements from originally created ArrayList System.out.println("List After remove() method = " + colors); } }
List Before remove() method = [Red, White, Blue, Pink, Black, Green] List After remove() method = [Red, White, Pink, Black, Green]
Caso 2: Si se conoce el elemento a eliminar
Iterador/atravesar ArrayList e incrementar el iterador de lista. Si alcanzamos el elemento requerido, rompamos el ciclo; de lo contrario, llegaremos al final y no se eliminará nada.
Java
// Java Program to Remove an element from ArrayList // using ListIterator // Importing ArrayList and ListIterator classes // of java.util package import java.util.ArrayList; import java.util.ListIterator; public class GFG { // Main driver method public static void main(String[] args) { // Create an ArrayList ArrayList<String> colors = new ArrayList<String>(); // Adding elements to the arraylist colors.add("Red"); colors.add("White"); colors.add("Blue"); colors.add("Pink"); colors.add("Black"); colors.add("Green"); ListIterator<String> listIterator = colors.listIterator(); // Print the original ArrayList created System.out.println("List Before remove() :- " + colors); // we want to remove Blue element from the arraylist for (String it : colors) { listIterator.next(); // if we reached to required element break the // loop if (it == "Blue") break; } // remove color blue from arraylist listIterator.remove(); System.out.println("List After remove():- " + colors); } }
List Before remove() :- [Red, White, Blue, Pink, black, green] List After remove():- [Red, White, Pink, black, green]
Publicación traducida automáticamente
Artículo escrito por patelnagendra1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA