El método poll() de Queue Interface devuelve y elimina el elemento en la parte frontal del contenedor. Elimina el elemento en el contenedor. El método no arroja una excepción cuando la Cola está vacía, sino que devuelve un valor nulo .
Sintaxis:
E poll()
Devoluciones: este método devuelve el elemento al frente del contenedor o al principio de la cola. Devuelve nulo cuando la cola está vacía.
Los siguientes programas ilustran el método poll() de Queue:
Programa 1: Con la ayuda de LinkedList .
// Java Program Demonstrate poll() // method of Queue import java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Queue Queue<Integer> Q = new LinkedList<Integer>(); // Add numbers to end of Queue Q.add(7855642); Q.add(35658786); Q.add(5278367); Q.add(74381793); // print queue System.out.println("Queue: " + Q); // print head and deletes the head System.out.println("Queue's head: " + Q.poll()); // print head and deleted the head System.out.println("Queue's head: " + Q.poll()); } }
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Programa 2: para demostrar el método poll() de la cola cuando la cola se vacía
// Java Program Demonstrate poll() // method of Queue when the Queue becomes empty import java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Queue Queue<Integer> Q = new LinkedList<Integer>(); // Add numbers to end of Queue Q.add(423); Q.add(3432); // print queue System.out.println("Queue: " + Q); // print head and deletes the head System.out.println("Queue's head: " + Q.poll()); // print head and deleted the head System.out.println("Queue's head: " + Q.poll()); // print queue System.out.println("Queue: " + Q); // print null as Queue is empty now System.out.println("Queue's head: " + Q.poll()); } }
Queue: [423, 3432] Queue's head: 423 Queue's head: 3432 Queue: [] Queue's head: null
Programa 3: Con la ayuda de ArrayDeque .
// Java Program Demonstrate poll() // method of Queue import java.util.*; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Queue Queue<Integer> Q = new ArrayDeque<Integer>(); // Add numbers to end of Queue Q.add(7855642); Q.add(35658786); Q.add(5278367); Q.add(74381793); // print queue System.out.println("Queue: " + Q); // print head and deletes the head System.out.println("Queue's head: " + Q.poll()); // print head and deleted the head System.out.println("Queue's head: " + Q.poll()); } }
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Programa 4: Con la ayuda de ConcurrentLinkedDeque .
// Java Program Demonstrate poll() // method of Queue import java.util.*; import java.util.concurrent.ConcurrentLinkedDeque; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Queue Queue<Integer> Q = new ConcurrentLinkedDeque<Integer>(); // Add numbers to end of Queue Q.add(7855642); Q.add(35658786); Q.add(5278367); Q.add(74381793); // print queue System.out.println("Queue: " + Q); // print head and deletes the head System.out.println("Queue's head: " + Q.poll()); // print head and deleted the head System.out.println("Queue's head: " + Q.poll()); } }
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Programa 5: Con la ayuda de LinkedBlockingDeque .
// Java Program Demonstrate poll() // method of Queue import java.util.*; import java.util.concurrent.LinkedBlockingDeque; public class GFG { public static void main(String[] args) throws IllegalStateException { // create object of Queue Queue<Integer> Q = new LinkedBlockingDeque<Integer>(); // Add numbers to end of Queue Q.add(7855642); Q.add(35658786); Q.add(5278367); Q.add(74381793); // print queue System.out.println("Queue: " + Q); // print head and deletes the head System.out.println("Queue's head: " + Q.poll()); // print head and deleted the head System.out.println("Queue's head: " + Q.poll()); } }
Queue: [7855642, 35658786, 5278367, 74381793] Queue's head: 7855642 Queue's head: 35658786
Referencia: https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html#poll–