Java Deque 接口

Deque 是一个双端队列接口,继承自 Queue 接口,Deque的实现类用的最多的是 LinkedList。

源码展示

package java.util;

public interface Deque<E> extends Queue<E> {

    /**
     * 头部插入元素。
     */
    void addFirst(E e);

    /**
     * 尾部插入元素。
     */
    void addLast(E e);

    /**
     * 头部插入元素。
     */
    boolean offerFirst(E e);

    /**
     * 尾部插入元素。
     */
    boolean offerLast(E e);

    /**
     * 删除第一个元素。
     */
    E removeFirst();

    /**
     * 删除最后一个元素。
     */
    E removeLast();

    /**
     * 获取头部的元素,删除。
     */
    E pollFirst();

    /**
     * 获取尾部的元素,删除。
     */
    E pollLast();

    /**
     * 获取头部元素,不删除。
     */
    E getFirst();

    /**
     * 获取尾部的元素,不删除。
     */
    E getLast();

    /**
     * 获取头部元素,不删除。
     */
    E peekFirst();

    /**
     * 获取尾部的元素,不删除。
     */
    E peekLast();

    /**
     * 删除第一次出现的一个指定对象。
     */
    boolean removeFirstOccurrence(Object o);

    /**
     * 删除最后出现的一个指定对象。
     */
    boolean removeLastOccurrence(Object o);

    /**
     * 在尾部插入元素。
     */
    boolean add(E e);

    /**
     * 在尾部插入元素。 
     */
    boolean offer(E e);

    /**
     * 获取队列头部元素,删除。
     */
    E remove();

    /**
     * 获取队列头部元素,删除。
     */
    E poll();

    /**
     * 获取队列头部元素,不删除。
     */
    E element();

    /**
     * 获取队列头部元素,不删除。
     */
    E peek();

    /**
     * 头部入栈
     */
    void push(E e);

    /**
     * 头部出栈
     */
    E pop();

    /**
     * 删除一个对象
     */
    boolean remove(Object o);

    /**
     * 是否包含某对象
     */
    boolean contains(Object o);

    /**
     * 队列大小
     */
    public int size();

    /**
     * 迭代器
     */
    Iterator<E> iterator();

    /**
     * 降序迭代器
     */
    Iterator<E> descendingIterator();

}
原文地址:https://www.cnblogs.com/feiqiangsheng/p/14988716.html