集合Qeque原理刨解JDK1.8(4)

LinkedList 實現了Deque棧接口並且實現Queue隊列,隊列先進先出,在尾部添加元素,從頭部刪除元素。
Queue如下方法

1.add()和 offer()尾部添加元素
2.element()和peek() 查看頭部元素
3.remove()和poll()返回頭部元素,並且刪除

public interface Queue<E> extends Collection<E> {
    boolean add(E e);
    boolean offer(E e);
    E remove();
    E poll();
    E element();
    E peek();
}

LiunkedList可以當Qeque使用,並且能使用如下方法,先添加先出
在這裏插入圖片描述

Deque棧接口如下方法
棧相關的方法也包括在裏面,棧是先進後出、後進先出。棧只能操作頭部,如果實現隊列二邊都能操作
push()表示入棧,頭部添加元素,棧滿報異常
pop()表示出棧,返回刪除頭部元素,棧空報異常
peek()查看棧頭部元素,爲空就null

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 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 contains(Object o);
    public int size();
    Iterator<E> iterator();
    Iterator<E> descendingIterator();
}

集合LinkedList可以當做Queue使用,看特性後添加,先出
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章