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