The put(E ele) method of DelayQueue class in Java is used to inserts a given element into the delay queue container. Hetre, E is the type of element maintained by this DelayQueue container.
Syntax:
public void put(E ele)
Parameters: This method accepts only one parameter ele. It is the element which will be inserted into the delay queue.
Return Value: The return type of the method is void and it does not return any value.
Exception:
- NullPointerException: It is thrown if the given value is null.
Below programs illustrate the put() method of DelayQueue in Java:
Program 1:
// 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());
}
} |
Before calling put() : true After calling put() : false
Program 2 : Demonstration of NullPointerException.
// 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);
}
}
} |
java.lang.NullPointerException
Reference: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/DelayQueue.html#put(E)