📅  最后修改于: 2023-12-03 15:16:22.026000             🧑  作者: Mango
在Java中,ConcurrentLinkedDeque
是一个基于链表结构实现的并发安全的双端队列。它提供了一组方法来操作队列的尾部元素,其中之一就是pollLast()
方法。
pollLast()
方法用于获取并移除双端队列的最后一个元素。如果队列为空,则返回null
。
public E pollLast()
以下示例展示了pollLast()
方法的使用:
import java.util.concurrent.ConcurrentLinkedDeque;
public class Main {
public static void main(String[] args) {
// 创建一个ConcurrentLinkedDeque对象
ConcurrentLinkedDeque<String> deque = new ConcurrentLinkedDeque<>();
// 添加元素到队列尾部
deque.offer("Java");
deque.offer("Python");
deque.offer("C++");
// 获取并移除最后一个元素
String lastElement = deque.pollLast();
System.out.println("Last element: " + lastElement);
// 打印队列中的元素
System.out.println("Queue: " + deque);
}
}
输出结果:
Last element: C++
Queue: [Java, Python]
ConcurrentLinkedDeque
是线程安全的,多个线程可以同时操作队列。pollLast()
方法在没有其他线程对队列进行修改的情况下,保证线程安全性。pollLast()
方法会返回null
。pollLast()
方法的性能要优于removeLast()
方法,因为它不需要进行元素的移动。