The pollFirst() method of BlockingDeque returns the front element in the Deque container, and deletes it. It returns null if the container is empty.
Syntax:
public E pollFirst()
Parameters: This method does not accept any parameters.
Returns: This method returns front element in the Deque container if the container is not empty and deletes the element. It returns null if the container is empty.
Note: The pollFirst() method of BlockingDeque has been inherited from the LinkedBlockingDeque class in Java.
Below programs illustrate pollFirst() method of BlockingDeque:
Program 1:
// Java Program Demonstrate pollFirst() // method of BlockingDeque   import java.util.concurrent.LinkedBlockingDeque; import java.util.concurrent.BlockingDeque; import java.util.*;   public class GFG {     public static void main(String[] args)       {           // create object of BlockingDeque         BlockingDeque<Integer> BD             = new LinkedBlockingDeque<Integer>();           // Add numbers to end of BlockingDeque         BD.addFirst( 7855642 );         BD.addFirst( 35658786 );         BD.addFirst( 5278367 );         BD.addFirst( 74381793 );           // Print the queue         System.out.println( "Blocking Deque: " + BD);           // prints and deletes         System.out.println( "Front element in Deque: " + BD.pollFirst());           // Deque after deletion of front element         System.out.println( "Blocking Deque: " + BD);     } } |
Blocking Deque: [74381793, 5278367, 35658786, 7855642] Front element in Deque: 74381793 Blocking Deque: [5278367, 35658786, 7855642]
Program 2:
// Java Program Demonstrate pollFirst() // method of BlockingDeque // when Deque is empty   import java.util.concurrent.LinkedBlockingDeque; import java.util.concurrent.BlockingDeque; import java.util.*;   public class GFG {     public static void main(String[] args)       {           // create object of LinkedBlockingDeque         LinkedBlockingDeque<Integer> BD             = new LinkedBlockingDeque<Integer>();           // Add numbers to end of BlockingDeque         BD.add( 7855642 );         BD.add( 35658786 );         BD.add( 5278367 );         BD.add( 74381793 );           // Print the queue         System.out.println( "Blocking Deque: " + BD);           // empty deque         BD.clear();           System.out.println( "Front element in Deque: " + BD.pollFirst());     } } |
Blocking Deque: [7855642, 35658786, 5278367, 74381793] Front element in Deque: null