Java ConcurrentLinkedQueue add()方法
ConcurrentLinkedQueue 的 add() 方法用来在ConcurrentLinkedQueue的尾部插入作为参数传递给add()的元素。如果插入成功,该方法返回True。ConcurrentLinkedQueue是无界的,所以这个方法不会抛出IllegalStateException或返回false。
语法
public boolean add(E e)
参数: 该方法需要一个参数 e ,代表要插入到这个并发链接队列的元素。
返回: 该方法在成功插入元素后返回true。
异常: 如果指定的元素为空,该方法会抛出 NullPointerException 。
下面的程序说明了ConcurrentLinkedQueue的add()方法。
例子1: 演示ConcurrentLinkedQueue的add()方法,添加字符串。
// Java Program Demonstrate add()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<String>
queue = new ConcurrentLinkedQueue<String>();
// Add String to queue
queue.add("Kolkata");
queue.add("Patna");
queue.add("Delhi");
queue.add("Jammu");
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
输出。
ConcurrentLinkedQueue: [Kolkata, Patna, Delhi, Jammu]
例2: 演示ConcurrentLinkedQueue的add()方法,用于添加数字。
// Java Program Demonstrate add()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<Integer>
queue = new ConcurrentLinkedQueue<Integer>();
// Add Numbers to queue
queue.add(4353);
queue.add(7824);
queue.add(78249);
queue.add(8724);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
}
}
输出。
ConcurrentLinkedQueue: [4353, 7824, 78249, 8724]
例3: 演示add()方法在添加Null时抛出的NullPointerException。
// Java Program Demonstrate add()
// method of ConcurrentLinkedQueue
import java.util.concurrent.*;
public class GFG {
public static void main(String[] args)
{
// create an ConcurrentLinkedQueue
ConcurrentLinkedQueue<Integer>
queue = new ConcurrentLinkedQueue<Integer>();
// Add null to queue
try {
queue.add(null);
}
catch (NullPointerException e) {
System.out.println("Exception thrown "
+ "while adding null: " + e);
}
}
}
输出。
Exception thrown while adding null: java.lang.NullPointerException
参考资料: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html#add-E-