ArrayBlockingQueueis a bounded queue, and it is thread-safe. Internally it uses a fixed-size array. Once the object is created, the size cannot be changed. The elements of this queue follow First-In-First-Out(Elements are inserted at the end of the queue and retrieved from the head of the queue ). Also,nullobjects are not allowed as elements.
The poll method can be used to get and remove the head(first element) element of the ArrayBlockingQueue object.
public E poll()
This method doesn’t take any argument.
This method returns the head element of the queue. If the queue is empty then null is returned.
The code below demonstrates how to use the poll method:
import java.util.concurrent.ArrayBlockingQueue;class Poll {public static void main( String args[] ) {ArrayBlockingQueue<String> queue = new ArrayBlockingQueue<>(5);queue.add("1");queue.add("2");queue.add("3");System.out.println("The queue is " + queue);System.out.println("queue.poll() - " + queue.poll());System.out.println("The queue is " + queue);}}
In the code above,
In line 1: Imported the ArrayBlockingQueue from the java.util.concurrent package.
In line 4: Created an object for the ArrayBlockingQueue class with the name queue and size 5.
In lines 5-7: Used the add method to add three elements to the queue object.
*In line 9: Used the poll method to get and remove the head element of the queue. After calling this method, the head element will be removed from the queue.