Java中的ArrayDeque pollLast()方法

Java中的ArrayDeque pollLast()方法

什么是ArrayDeque

Java中的ArrayDeque是一个双端队列,可以在队列的两端进行元素添加/移除操作。它实现了Deque接口,并且在内部使用了一个动态数组作为存储结构。

pollLast()方法介绍

pollLast()方法是ArrayDeque提供的一个方法,用于从队列尾部移除元素并返回。如果队列为空,则返回null。

ArrayDeque的源码中pollLast()方法定义如下:

public E pollLast() {
    final Object[] elements = this.elements;
    final int size = this.size;
    final int tail = (this.tail - 1) & (elements.length - 1);
    final Object x = elements[tail];
    if (x == null)
        return null;
    elements[tail] = null;
    this.tail = tail;
    this.size = size - 1;
    return (E) x;
}

pollLast()方法主要执行的操作如下:

  1. 首先获取ArrayDeque内部存储的元素数组elements。
  2. 然后获取队列的大小size和队列尾部元素的下标tail。
  3. 获取尾部元素并将其赋值给x。
  4. 如果尾部元素为null,则返回null。
  5. 否则将尾部元素置为null,队列的size减1,尾部元素下标减1。
  6. 最后返回被移除的元素x。

pollLast()方法示例

下面是一个示例程序,展示如何使用pollLast()方法从ArrayDeque中移除元素并返回。

public class ArrayDequeDemo {
    public static void main(String[] args) {
        ArrayDeque<String> deque = new ArrayDeque<String>();
        deque.add("A");
        deque.add("B");
        deque.add("C");
        deque.add("D");
        System.out.println("原始队列:");
        deque.forEach(System.out::println);
        System.out.println("移除元素:" + deque.pollLast());
        System.out.println("移除元素后队列:");
        deque.forEach(System.out::println);
    }
}

输出结果如下:

原始队列:
A
B
C
D
移除元素:D
移除元素后队列:
A
B
C

结论

pollLast()方法是ArrayDeque提供的一个方法,用于从队列尾部移除元素并返回。如果队列为空,则返回null。使用pollLast()方法可以方便地从ArrayDeque中移除元素,在实际开发中具有广泛的应用。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程