Iterators in Java from scratch

2 mins 51 sec read Basic


Java Iterator is used to iterate through all the elements in the List. An Iterator is used to go through each element of Collections in Java easily. Let's continue with the example we followed in ArrayList tutorial.

The Methods Declared by Iterator

Sr.No. Method & Description
1

boolean hasNext( )

Returns true if there are more elements. Otherwise, returns false.

2

Object next( )

Returns the next element. Throws NoSuchElementException if there is not a next element.

3

void remove( )

Removes the current element. Throws IllegalStateException if an attempt is

made to call remove( ) that is not preceded by a call to next( ).

Example

In this example, we created two Strings array named things & more things. Two Lists named list1 & list2. Task this program will perform is firstly it prints all the list1 elements then it checks list2 whether list2 contains list1 elements and if yes remove them from list1 and print all final list1 using Iterator.

import java.util.*;
public class JavaCollectionDemo {
  
public static void main(String[] args)
{

//String array
String[] things = {"eggs" , "hats" , 
"laser" , "pie"};

// Define an empty ArrayList 
List list1 =  new ArrayList();

// Add array items to list1
    for(String x: things)
    {
    list1.add(x);
    }


// Another String array 
String[] morethings = {"eggs" , "hats"};

// Define a second empty ArrayList 
List list2 =  new ArrayList();

// Add array items to list2
    for(String x: morethings)
    {
     list2.add(x);
    }

Print list1 elements 
     for (int i = 0; i// Call edit List Function to check
 whether list1 contains list2 items and if yes
 remove them from list1.
     editList(list1, list2);
     System.out.println();

// Display Final List1 elements
    for (int i = 0; i// Function to check whether list1 contains 
list2 items and if yes remove them from list1.
public static void editList(Collection l1 , Collection l2)
{
 Iterator iter = l1.iterator(); 
 while(iter.hasNext())
 {
   if(l2.contains(iter.next()))
   {
     iter.remove();
     
   }   
 }
}
}

Output

eggs   hats  laser   pie   
laser   pie

editList method : Firstly we created an iterator object iter. We iterated through list1 one by one and checked whether list2 contains the elements of list1 and if yes remove it.

How was the tutorial? Nice. Right?



Deep Concept videos to crack the highly-piad interviews.

Chekout out our Youtube Channel to get detailed video content on important topics in interviews.



What is your Interview Score?

Test your skillset with the curated questions created by experts around the globe.

Book a free test slot. Now !.

It usually takes 30 mins for an online test and this test will be MCQ based. Get detailed analytics based on your test and recommedations with personalised roadmaps.

Book a test slot. Now!

Have questions about the trial coding class?

Chat with our experts to discuss

Connect on WhatsApp


Recommended tutorials

#online compiler for c     #python for programming    

#dfs and bfs algorithm     #programming with c language

#storageclass in C    #listcomprehension in python