Java中的 ConcurrentLinkedQueue offer() 方法
ConcurrentLinkedQueue的offer()方法用于在此 ConcurrentLinkedQueue 的尾部插入作为参数传递的元素。如果插入成功,此方法返回 True。 ConcurrentLinkedQueue 是无界的,所以这个方法 offer() 永远不会返回 false。
句法:
public boolean offer(E e)
参数:此方法采用单个参数e ,它表示我们要插入此 ConcurrentLinkedQueue 的元素。
返回:成功插入元素后,此方法返回true 。
异常:如果指定元素为空,此方法将抛出NullPointerException 。
下面的程序说明了 ConcurrentLinkedQueue 的 offer() 方法:
示例 1:演示 ConcurrentLinkedQueue 的 offer() 方法添加字符串。
// Java Program Demonstrate offer()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue
queue = new ConcurrentLinkedQueue();
// Add String to queue using offer() method
queue.offer("Aman");
queue.offer("Amar");
queue.offer("Sanjeet");
queue.offer("Rabi");
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
输出:
ConcurrentLinkedQueue: [Aman, Amar, Sanjeet, Rabi]
示例 2:演示 ConcurrentLinkedQueue 的 offer() 方法用于添加数字。
// Java Program Demonstrate offer()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue
queue = new ConcurrentLinkedQueue();
// Add Numbers to queue using offer
queue.offer(4353);
queue.offer(7824);
queue.offer(78249);
queue.offer(8724);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
输出:
ConcurrentLinkedQueue: [4353, 7824, 78249, 8724]
示例 3:演示用于添加 Null 的 offer() 方法引发的 NullPointerException。
// Java Program Demonstrate offer()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue
queue = new ConcurrentLinkedQueue();
// Add null to queue
try {
queue.offer(null);
}
catch (NullPointerException e) {
System.out.println("Exception thrown"
+ " while adding null: " + e);
}
}
}
输出:
Exception thrown while adding null: java.lang.NullPointerException
参考: https: Java/util/concurrent/ConcurrentLinkedQueue.html#offer-E-