BlockingDeque pollFirst() method in Java with examples

Last Updated : 12 Jul, 2025
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
// 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);
    }
}
Output:
Blocking Deque: [74381793, 5278367, 35658786, 7855642]
Front element in Deque: 74381793
Blocking Deque: [5278367, 35658786, 7855642]
Program 2: Java
// 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());
    }
}
Output:
Blocking Deque: [7855642, 35658786, 5278367, 74381793]
Front element in Deque: null
Reference: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/BlockingDeque.html#pollFirst(long, %20java.util.concurrent.TimeUnit)
Comment