ArrayDeque
实现了Deque
接口,内部存储数据结构为可调整大小的数组,而且没有容量限制,线程非安全。
其继承关系如下:
Deque
1 |
|
主要属性
1 | public class ArrayDeque<E> extends AbstractCollection<E> |
构造器
1 | public ArrayDeque() { |
入队
1 | public boolean add(E e) { |
扩容
1 | private void doubleCapacity() { |
出队
1 | public E remove() { |
总结
ArrayDeque
采用数组实现双端队列- 出队入队是通过头尾指针循环利用数组实现
- 容量不足时是会扩容的,每次扩容容量增加一倍
- 可以直接作为栈使用