¿Cómo eliminar un elemento de la colección usando el objeto Iterator en Java?

La colección en Java es un conjunto de interfaces como List, Set y Queue. Un iterador en Java se usa para iterar o atravesar los elementos de la Colección. Hay tres tipos de iteradores en Java, a saber, Enumerator , Iterator y ListIterator. 

Las dos formas de eliminar un elemento de Colecciones usando Iterator:

  1. Usando iterador
  2. Usando ListIterator

Enfoque 1: uso de iterador

  • Se crea una lista y se agregan elementos a la lista usando el método add().
  • El objeto Iterator se usa para iterar sobre los elementos de la lista usando los métodos hasNext() y next() .
  • Un si la condición se usa dentro del ciclo while y cuando se cumple la condición, el elemento en particular se elimina usando el método remove() .
  • Cuando se recorre toda la lista de nuevo, el elemento que se eliminó ya no está presente en la lista.

Java

// Java program to Remove an Element from 
// Collection using Iterator 
  
import java.util.ArrayList;
import java.util.Iterator;
class IteratorDemo 
{
    public static void main(String[] args) 
    {
        ArrayList<Integer> l = new ArrayList<Integer>();
        
        for(int i=0;i<=50;i=i+5)
        {
            l.add(i);
        }
        
        Iterator<Integer> itr = l.iterator();
        
        System.out.println("List before removal");
        
        for(int i=0;i<l.size();i++)
        {
            System.out.print(l.get(i)+" ");
        }
          
        while(itr.hasNext())
        {
            if(itr.next()%2==1)
                itr.remove();
        }
      
        System.out.println("\nList after removal");
        
        for(int i=0;i<l.size();i++)
        {
            System.out.print(l.get(i)+" ");
        }
    }
  
}
Producción

List before removal
0 5 10 15 20 25 30 35 40 45 50 
List after removal
0 10 20 30 40 50

Enfoque 2: Uso de ListIterator

  • Se crea una lista y se agregan elementos a la lista usando el método add().
  • El objeto ListIterator se usa para iterar sobre los elementos de la lista usando los métodos hasNext() y next().
  • Se usa una condición if dentro del ciclo while y cuando se cumple la condición, el elemento en particular se elimina usando el método remove().
  • Cuando se recorre toda la lista de nuevo, el elemento que se eliminó ya no está presente en la lista.

Java

// Java program to Remove an Element from
// Collection using ListIterator
  
import java.util.ArrayList;
import java.util.ListIterator;
  
public class ListIteratorDemo {
    public static void main(String[] args)
    {
        ArrayList<String> l = new ArrayList<String>();
  
        l.add("January");
        l.add("February");
        l.add("March");
        l.add("April");
        l.add("May");
        l.add("June");
        l.add("July");
        l.add("August");
  
        ListIterator<String> itr = l.listIterator();
  
        System.out.println("List before removal");
  
        for (int i = 0; i < l.size(); i++)
            System.out.print(l.get(i) + " ");
  
        while (itr.hasNext()) {
            if (itr.next().equals("March")) {
                itr.remove();
            }
        }
  
        System.out.println("\nList after removal");
  
        for (int i = 0; i < l.size(); i++)
            System.out.print(l.get(i) + " ");
    }
}
Producción

List before removal
January February March April May June July August 
List after removal
January February April May June July August

Publicación traducida automáticamente

Artículo escrito por Shreyasi_Chakraborty y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *