How to Remove an Element from Collection using Iterator Object in Java?

07 Jan, 2021
Collection in Java is a set of interfaces like List, Set, and Queue. An iterator in Java is used to iterate or traverse through the elements of the Collection. There are three types of iterator in Java namely, Enumerator, Iterator, and ListIterator. 
The two ways of removing an element from Collections using Iterator :
Using IteratorUsing ListIterator
Using Iterator
Using ListIterator
Approach 1: Using Iterator
A List is created and elements are added to the list using the add() method.
The Iterator object is used to iterate over the elements of the list using the hasNext() and next() methods.
An if the condition is used within the while loop and when the condition is satisfied, the particular element is removed using the remove() method.
When the entire list is traversed again the element which was removed is no longer present in the list.
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)+" ");        }    }  }
List before removal
0 5 10 15 20 25 30 35 40 45 50 
List after removal
0 10 20 30 40 50
Approach 2: Using ListIterator
A list is created and elements are added to the list using the add() method.
The ListIterator object is used to iterate over the elements of the list using the hasNext() and next() methods.
An if condition is used within the while loop and when the condition is satisfied, the particular element is removed using the remove() method.
When the entire list is traversed again the element which was removed is no longer present in the list.
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) + " ");    }}
List before removal
January February March April May June July August 
List after removal
January February April May June July August
Java-Collections
Java-Iterator
Picked
Technical Scripter 2020
Java
Java Programs
Technical Scripter
Java
Java-Collections
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.