Java.util.LinkedList.poll(), pollFirst(), pollLast() with examples in Java
Last Updated : 10 Dec, 2018
Java's Linked list class offers a function that allows a "
Queue Based" working called poll(). This function not only returns deletes the first element, but
also displays them while being deleted and hence can have a lot of usage in daily life problems and competitive programming as well. There are
3 variants of poll(), all three are discussed in this article.
1. poll() : This method
retrieves and
removes the
head (first element) of this list.
Declaration : public E poll() Return Value : This method returns the first element of this list, or null if this list is empty.
Java // Java code to demonstrate the working // of poll() in linked list import java.util.*; public class LinkedListPoll { public static void main(String[] args) { // Declaring a LinkedList LinkedList list = new LinkedList(); // adding elements list.add("Geeks"); list.add(4); list.add("Geeks"); list.add(8); // printing the list System.out.println("The initial Linked List is : " + list); // using poll() to retrieve and remove the head // removes and displays "Geeks" System.out.println("Head element of the list is : " + list.poll()); // printing the resultant list System.out.println("Linked List after removal using poll() : " + list); } } Output :
The initial Linked List is : [Geeks, 4, Geeks, 8] Head element of the list is : Geeks Linked List after removal using poll() : [4, Geeks, 8]
2. pollFirst() : This method
retrieves and
removes the
first element of this list, or returns null if this list is empty.
Declaration : public E pollFirst() Return Value : This method returns the first element of this list, or null if this list is empty
Java // Java code to demonstrate the working // of pollFirst() in linked list import java.util.*; public class LinkedListPollFirst { public static void main(String[] args) { // Declaring a LinkedList LinkedList list = new LinkedList(); // adding elements list.add("Geeks"); list.add(4); list.add("Geeks"); list.add(8); // printing the list System.out.println("The initial Linked List is : " + list); // using pollFirst() to retrieve and remove the head // removes and displays "Geeks" System.out.println("Head element of the list is : " + list.pollFirst()); // printing the resultant list System.out.println("Linked List after removal using pollFirst() : " + list); } } Output :
The initial Linked List is : [Geeks, 4, Geeks, 8] Head element of the list is : Geeks Linked List after removal using pollFirst() : [4, Geeks, 8]
3. pollLast() : This method
retrieves and
removes the
last element of this list, or returns null if this list is empty.
Declaration : public E pollLast() Return Value : This method returns the last element of this list, or null if this list is empty.
Java // Java code to demonstrate the working // of pollLast() in linked list import java.util.*; public class LinkedListPollLast { public static void main(String[] args) { // Declaring a LinkedList LinkedList list = new LinkedList(); // adding elements list.add("Geeks"); list.add(4); list.add("Geeks"); list.add(8); // printing the list System.out.println("The initial Linked List is : " + list); // using pollLast() to retrieve and remove the tail // removes and displays 8 System.out.println("Tail element of the list is : " + list.pollLast()); // printing the resultant list System.out.println("Linked List after removal using pollLast() : " + list); } } Output :
The initial Linked List is : [Geeks, 4, Geeks, 8] Tail element of the list is : 8 Linked List after removal using pollLast() : [Geeks, 4, Geeks]
Practical Application : This function has potential usage in the "
queue management" systems and also in "1st elimination" games that can be thought of. The former example is discussed below.
Java // Java code to demonstrate the practical // application of poll() in linked list import java.util.*; public class LinkedListPollApp { public static void main(String[] args) { // Declaring a LinkedList LinkedList list = new LinkedList(); // adding queue entry of people // in order list.add("Astha"); list.add("Shambhavi"); list.add("Nikhil"); list.add("Manjeet"); // printing the list System.out.println("The initial queue is : " + list); System.out.print("The order of exit is : "); while (!list.isEmpty()) { // using poll() to display the order of exit from queue System.out.print(list.poll() + " <-- "); } } } Output :
The initial queue is : [Astha, Shambhavi, Nikhil, Manjeet] The order of exit is : Astha <-- Shambhavi <-- Nikhil <-- Manjeet <--
Explore
Java Basics
OOP & Interfaces
Collections
Exception Handling
Java Advanced
Practice Java
My Profile