Java ConcurrentLinkedQueue poll()方法
ConcurrentLinkedQueue 的 poll() 方法用于移除并返回该ConcurrentLinkedQueue的头部。如果ConcurrentLinkedQueue是空的,那么这个方法将返回null。
语法
public E poll()
返回: 该方法删除并返回该ConcurrentLinkedQueue的头部,如果该队列为空,则返回空。
下面的程序说明了ConcurrentLinkedQueue的poll()方法。
例1 :
// Java Program Demonstrate poll()
// 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);
// apply poll()
int response1 = queue.poll();
// print after applying poll method
System.out.println("Head: " + response1);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("Current ConcurrentLinkedQueue: " + queue);
}
}
输出。
ConcurrentLinkedQueue: [4353, 7824, 78249, 8724]
Head: 4353
Current ConcurrentLinkedQueue: [7824, 78249, 8724]
例2 :
// Java Program Demonstrate poll()
// 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("Aman");
queue.add("Amar");
queue.add("Sanjeet");
queue.add("Rabi");
// Displaying the existing ConcurrentLinkedQueue
System.out.println("ConcurrentLinkedQueue: " + queue);
// apply poll() on queue
String response1 = queue.poll();
// print after applying poll method
System.out.println("Head: " + response1);
// Displaying the existing ConcurrentLinkedQueue
System.out.println("Current ConcurrentLinkedQueue: " + queue);
// apply poll() on queue more than one time
queue.poll();
queue.poll();
// Displaying the existing ConcurrentLinkedQueue
System.out.println("After 2 poll() applied\n"
+ "ConcurrentLinkedQueue: " + queue);
}
}
输出。
ConcurrentLinkedQueue: [Aman, Amar, Sanjeet, Rabi]
Head: Aman
Current ConcurrentLinkedQueue: [Amar, Sanjeet, Rabi]
After 2 poll() applied
ConcurrentLinkedQueue: [Rabi]
参考资料: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html#poll-