Java - Queue poll() Method
Description
The Java Queue poll() retrieves and removes the head of the list represented by this queue.Returns null if this queue is empty. The resulted Queue object is modified and first element is removed.
Declaration
Following is the declaration for java.util.Queue.poll() method
public E poll()
Parameters
NA
Return Value
This method returns the head of the list represented by this queue, or null if this queue is empty.
Exception
NA
Example 1
The following example shows the usage of Java Queue poll() method with Integers. We're creating an LinkedList object of Integers, adding some elements, print it and then use poll() method to get the first element. As Queue is modified it is printed to check if first element is present or not.
package com.tutorialspoint;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
// create an empty queue
Queue<Integer> queue = new LinkedList<>();
// use add() method to add elements in the queue
queue.add(25);
queue.add(30);
queue.add(20);
queue.add(18);
// let us print all the elements available in queue
System.out.println("Queue = " + queue);
// it will retrieve first element after removing from queue
System.out.println("Retrieved Element is = " + queue.poll());
// let us print all the elements available in queue again
System.out.println("Queue = " + queue);
}
}
Output
Let us compile and run the above program, this will produce the following result −
Queue = [25, 30, 20, 18] Retrieved Element is = 25 Queue = [30, 20, 18]
Example 2
The following example shows the usage of Java Queue poll() method with Strings. We're creating an LinkedList of String, adding some elements, print it and then use poll() method to get the first element. As Queue is modified it is printed to check if first element is present or not.
package com.tutorialspoint;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
// create an empty queue
Queue<String> queue = new LinkedList<>();
// use add() method to add elements in the queue
queue.add("A");
queue.add("B");
queue.add("C");
queue.add("D");
// let us print all the elements available in queue
System.out.println("Queue = " + queue);
// it will retrieve first element after removing from queue
System.out.println("Retrieved Element is = " + queue.poll());
// let us print all the elements available in queue again
System.out.println("Queue = " + queue);
}
}
Output
Let us compile and run the above program, this will produce the following result −
Queue = [A, B, C, D] Retrieved Element is = A Queue = [B, C, D]
Example 3
The following example shows the usage of Java Queue poll() method with Student objects. We're creating an LinkedList of Student, adding some elements, print it and then use poll() method to get the first element. As Queue is modified it is printed to check if first element is present or not.
package com.tutorialspoint;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
// create an empty queue
Queue<Student> queue = new LinkedList<>();
// use add() method to add elements in the queue
queue.add(new Student(1, "Julie"));
queue.add(new Student(2, "Robert"));
queue.add(new Student(3, "Adam"));
// let us print all the elements available in queue
System.out.println("Queue = " + queue);
// it will retrieve first element after removing from queue
System.out.println("Retrieved Element is = " + queue.poll());
// let us print all the elements available in queue again
System.out.println("Queue = " + queue);
}
}
class Student {
int rollNo;
String name;
Student(int rollNo, String name){
this.rollNo = rollNo;
this.name = name;
}
@Override
public String toString() {
return "[ " + this.rollNo + ", " + this.name + " ]";
}
@Override
public boolean equals(Object obj) {
Student s = (Student)obj;
return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
}
}
Output
Let us compile and run the above program, this will produce the following result −
Queue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]] Retrieved Element is = [ 1, Julie ] Queue = [[ 2, Robert ], [ 3, Adam ]]
java_util_queue.htm