Open In App

ArrayBlockingQueue iterator() Method in Java

Last Updated : 26 Nov, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

The iterator() method of ArrayBlockingQueue class is used to returns an iterator of the same elements as this queue in a proper sequence. The elements returned from this method contains elements in order from first(head) to last(tail). The returned iterator is weakly consistent.

Syntax:

public Iterator iterator()

Return Value: The method returns the iterator having same elements as present in ArrayBlockingQueue in proper sequence.

Below programs illustrates iterator() method of ArrayBlockingQueue class:

Program 1:




// Program Demonstrate how to apply iterator() method
// of ArrayBlockingQueue Class.
  
import java.util.concurrent.ArrayBlockingQueue;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // Define capacity of ArrayBlockingQueue
        int capacity = 5;
  
        // Create object of ArrayBlockingQueue
        ArrayBlockingQueue<Integer> queue = new 
                ArrayBlockingQueue<Integer>(capacity);
  
        // Add 5 elements to ArrayBlockingQueue
        queue.offer(423);
        queue.offer(422);
        queue.offer(421);
        queue.offer(420);
        queue.offer(424);
  
        // Print queue
        System.out.println("Queue is " + queue);
  
        // Call iterator() method and Create an iterator
        Iterator iteratorValues = queue.iterator();
  
        // Print elements of iterator
        System.out.println("\nThe iterator values:");
        while (iteratorValues.hasNext()) {
            System.out.println(iteratorValues.next());
        }
    }
}


Output:

Queue is [423, 422, 421, 420, 424]

The iterator values:
423
422
421
420
424

Program 2:




// Program Demonstrate how to apply iterator() method
// of ArrayBlockingQueue Class.
  
import java.util.concurrent.ArrayBlockingQueue;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // Define capacity of ArrayBlockingQueue
        int capacity = 5;
  
        // Create object of ArrayBlockingQueue
        ArrayBlockingQueue<String> queue = new 
                  ArrayBlockingQueue<String>(capacity);
  
        // Add 5 elements to ArrayBlockingQueue
        queue.offer("User");
        queue.offer("Employee");
        queue.offer("Manager");
        queue.offer("Analyst");
        queue.offer("HR");
  
        // Print queue
        System.out.println("Queue is " + queue);
  
        // Call iterator() method and Create an iterator
        Iterator iteratorValues = queue.iterator();
  
        // Print elements of iterator
        System.out.println("\nThe iterator values:");
        while (iteratorValues.hasNext()) {
            System.out.println(iteratorValues.next());
        }
    }
}


Output:

Queue is [User, Employee, Manager, Analyst, HR]

The iterator values:
User
Employee
Manager
Analyst
HR

Reference: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ArrayBlockingQueue.html#iterator



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads