El método put(E ele) de la clase DelayQueue en Java se usa para insertar un elemento dado en el contenedor de la cola de retraso. Hetre, E es el tipo de elemento mantenido por este contenedor DelayQueue.
Sintaxis :
public void put(E ele)
Parámetros: este método acepta solo un parámetro ele . Es el elemento que se insertará en la cola de retraso.
Valor de retorno: el tipo de retorno del método es nulo y no devuelve ningún valor.
Excepción:
- NullPointerException : se lanza si el valor dado es nulo.
Los siguientes programas ilustran el método put() de DelayQueue en Java:
Programa 1 :
Java
// Java program to illustrate the put() // method in Java import java.util.concurrent.DelayQueue; import java.util.concurrent.Delayed; import java.util.concurrent.TimeUnit; public class GFG { public static void main(String args[]) { // Create DelayQueue instance DelayQueue<Delayed> queue = new DelayQueue<Delayed>(); // Initially Delay Queue is empty System.out.println("Before calling put() : " + queue.isEmpty()); // Create an object of type Delayed Delayed ele = new Delayed() { public long getDelay(TimeUnit unit) { return 24; // some value is returned } public int compareTo(Delayed o) { if (o.getDelay(TimeUnit.DAYS) > this.getDelay(TimeUnit.DAYS)) return 1; else if (o.getDelay(TimeUnit.DAYS) == this.getDelay(TimeUnit.DAYS)) return 0; return -1; } }; // Insert the created object to DelayQueue // using the put() method queue.put(ele); // Check if DelayQueue is empty. System.out.println("After calling put() : " + queue.isEmpty()); } }
Producción:
Before calling put() : true After calling put() : false
Programa 2 : Demostración de NullPointerException.
Java
// Java program to illustrate the Exception thrown // by put() method of DelayQueue import java.util.concurrent.DelayQueue; import java.util.concurrent.Delayed; import java.util.concurrent.TimeUnit; public class GFG { public static void main(String args[]) { DelayQueue<Delayed> queue = new DelayQueue<Delayed>(); try { queue.put(null); } catch (Exception e) { System.out.println(e); } } }
Producción:
java.lang.NullPointerException
Referencia : https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/DelayQueue.html#put(E)