Java.util.ArrayDeque 类

简介

java.util.ArrayDeque 类提供 resizable-array 并实现 Deque 接口。 以下是关于 Array Deques 的要点 −

  • 数组双端队列没有容量限制,因此它们会根据需要增长以支持使用。

  • 它们不是线程安全的; 在没有外部同步的情况下。

  • 它们不支持多线程并发访问。

  • 数组双端队列中禁止使用 Null 元素。

  • 它们比 Stack 和 LinkedList 更快。

这个类及其迭代器实现了 CollectionIterator 接口的所有可选方法。


类声明

以下是 java.util.ArrayDeque 类的声明 −

public class ArrayDeque<E>
   extends AbstractCollection<E>
   implements Deque<E>, Cloneable, Serializable

这里 <E> 代表一个元素,它可以是任何类。 例如,如果您正在构建一个整数数组列表,那么您将其初始化为 −

ArrayList<Integer> list = new ArrayList<Integer>();  

类构造函数

序号 构造函数 & 描述
1

ArrayDeque()

此构造函数用于创建一个空数组双端队列,其初始容量足以容纳 16 个元素。

2

ArrayDeque(Collection<? extends E> c)

此构造函数用于创建包含指定集合元素的双端队列。

3

ArrayDeque(int numElements)

此构造函数用于创建一个空数组双端队列,其初始容量足以容纳指定数量的元素。


类方法

序号 方法 & 描述
1 boolean add(E e)

此方法在此双端队列末尾插入指定元素。

2 void addFirst(E e)

此方法在此双端队列的前面插入指定元素。

3 void addLast(E e)

此方法在此双端队列末尾插入指定元素。

4 void clear()

此方法从该双端队列中删除所有元素。

5 ArrayDeque<E> clone()

此方法返回此双端队列的副本。

6 boolean contains(Object o)

如果此双端队列包含指定元素,则此方法返回 true。

7 Iterator<E> descendingIterator()

此方法以相反的顺序返回此双端队列中元素的迭代器。

8 E element()

此方法检索但不删除此双端队列表示的队列的头部。

9 E getFirst()

此方法检索但不删除此双端队列的第一个元素。

10 E getLast()

此方法检索但不删除此双端队列的最后一个元素。

11 boolean isEmpty()

如果此双端队列不包含任何元素,则此方法返回 true。

12 Iterator<E> iterator()

此方法返回此双端队列中元素的迭代器。

13 boolean offer(E e)

此方法在此双端队列的末尾插入指定的元素。

14 boolean offerFirst(E e)

此方法在此双端队列的前面插入指定元素。

15 boolean offerLast(E e)

此方法在此双端队列的末尾插入指定的元素。

16 E peek()

此方法检索但不删除此双端队列表示的队列的头部,如果此双端队列为空,则返回 null。

17 E peekFirst()

此方法检索但不删除此双端队列的第一个元素,如果此双端队列为空,则返回 null。

18 E peekLast()

此方法检索但不删除此双端队列的最后一个元素,如果此双端队列为空,则返回 null。

19 E poll()

此方法检索并删除此双端队列表示的队列的头部,如果此双端队列为空,则返回 null。

20 E pollFirst()

此方法检索并删除此双端队列的第一个元素,如果此双端队列为空,则返回 null。

21 E pollLast()

此方法检索并删除此双端队列的最后一个元素,如果此双端队列为空,则返回 null。

22 E pop()

此方法从该双端队列表示的堆栈中弹出一个元素。

23 void push(E e)

此方法将一个元素推送到此双端队列表示的堆栈上。

24 E remove()

此方法检索并删除此双端队列表示的队列的头部。

25 boolean remove(Object o)

此方法从此双端队列中删除指定元素的单个实例。

26 E removeFirst()

此方法检索并删除此双端队列的第一个元素。

27 boolean removeFirstOccurrence(Object o)

此方法删除此双端队列中第一次出现的指定元素。

28 E removeLast()

此方法检索并删除此双端队列的最后一个元素。

29 boolean removeLastOccurrence(Object o)

此方法删除此双端队列中指定元素的最后一次出现。

30 int size()

此方法返回此双端队列中的元素数。

31 object[] toArray()

此方法返回一个数组,其中包含此双端队列中所有元素的正确顺序。