Wednesday, July 3, 2024
HomeLanguagesJavaBlockingDeque poll() method in Java with examples

BlockingDeque poll() method in Java with examples

The poll() 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 poll()

Parameters: This method does not accept any parameters.

Returns: This method returns front element of the Deque container if the container is not empty and deletes it. It returns null if the container is empty.

Note: The poll() method of BlockingDeque has been inherited from the LinkedBlockingDeque class in Java.

Below programs illustrate poll() method of BlockingDeque:

Program 1:




// Java Program Demonstrate poll()
// 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.add(7855642);
        BD.add(35658786);
        BD.add(5278367);
        BD.add(74381793);
  
        // Print the queue
        System.out.println("Blocking Deque: " + BD);
  
        System.out.println("Front element in Deque: " + BD.poll());
  
        // One element is deleted as poll was called
        System.out.println("Blocking Deque: " + BD);
    }
}


Output:

Blocking Deque: [7855642, 35658786, 5278367, 74381793]
Front element in Deque: 7855642
Blocking Deque: [35658786, 5278367, 74381793]

Program 2:




// Java Program Demonstrate poll()
// 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 BlockingDeque
        BlockingDeque<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.poll());
    }
}


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#poll(long, %20java.util.concurrent.TimeUnit)

Nokonwaba Nkukhwana
Experience as a skilled Java developer and proven expertise in using tools and technical developments to drive improvements throughout a entire software development life cycle. I have extensive industry and full life cycle experience in a java based environment, along with exceptional analytical, design and problem solving capabilities combined with excellent communication skills and ability to work alongside teams to define and refine new functionality. Currently working in springboot projects(microservices). Considering the fact that change is good, I am always keen to new challenges and growth to sharpen my skills.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments