队列接口的offer(E e)方法在不违反容量限制的情况下可以立即将指定的元素插入此队列。此方法优于add()方法,因为在容器的容量已满时,此方法不会引发异常,因为它会返回false。
用法:
boolean offer(E e)
参数:此方法接受强制参数e,该参数是要插入队列中的元素。
返回:成功插入时此方法返回true,否则返回false。
异常:该函数引发四个异常,如下所述:
ClassCastException:当要输入的元素的类阻止将其添加到此容器中时:
IllegalArgumentException:当元素的某些属性阻止将其添加到队列中时:
NullPointerException:当要插入的元素作为null传递并且Queue的接口不允许使用null元素时。
以下示例程序旨在说明offer()队列方法:
程序1:借助LinkedBlockingDeque。
// Java Program Demonstrate offer()
// method of Queue
import java.util.*;
import java.util.concurrent.LinkedBlockingQueue;
public class GFG {
public static void main(String[] args)
throws IllegalStateException
{
// create object of Queue
Queue Q
= new LinkedBlockingQueue(3);
if (Q.offer(10))
System.out.println(“The Queue is not full”
+ ” and 10 is inserted”);
else
System.out.println(“The Queue is full”);
if (Q.offer(15))
System.out.println(“The Queue is not full”
+ ” and 15 is inserted”);
else
System.out.println(“The Queue is full”);
if (Q.offer(25))
System.out.println(“The Queue is not full”
+ ” and 25 is inserted”);