Deque 双向队列接口
public interface Deque<E> extends Queue<E>{
void addFirst(E e); //添加元素到列表头部
void addLast(E e); //添加元素到列表末尾
boolean offerFirst(E e);//addFirst(E e)
boolean offerLast(E e); //addLast(E e)
E removeFirst(); //从列表中删除并返回第一个元素。
E removeLast(); //从列表中删除并返回最后一个元素。
E pop(); //removeFirst()
E peek(); //检索但不删除该列表的头
E push(E e); //addFirst(E e)
}
Queue 队列接口
public interface Queue<E> extends Collection<E> {
// 如果可以在不违反容量限制的情况下立即将指定的元素插入该队列,则在成功时返回{@code true},如果当前没有可用空间,则抛出{@code IllegalStateException}
boolean add(E e);
// 如果可以在不违反容量限制的情况下立即将指定的元素插入到此队列中。当使用容量受限的队列时,此方法通常比{@link #add}更可取,后者只能通过抛出异常才能插入元素
boolean offer(E e);
// 检索并删除此队列的头部。此方法与{@link #poll}的不同之处在于,如果该队列为空,它将抛出异常
E remove();
// 检索并删除该队列的头部,如果该队列为空,则返回{@code null}
E poll();
// 检索但不删除此队列的头部。这个方法与{@link #peek peek}的不同之处在于,它只在队列为空时抛出异常
E element();
// 检索但不删除此队列的头部。如果该队列为空,则返回{@code null}
E peek();
}