Java.util.LinkedList.poll(), pollFirst(), pollLast() with examples in Java

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 code to demonstrate the working// of poll() in linked listimport 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 code to demonstrate the working// of pollFirst() in linked listimport 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 code to demonstrate the working// of pollLast() in linked listimport 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 code to demonstrate the practical// application of poll() in linked listimport 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 <-- 

This article is contributed by Astha Tyagi. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Java - util package
Java-Collections
Java-Functions
java-LinkedList
Linked Lists
Java
Java
Java-Collections
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.