deque - java

來源:趣味經驗館 1.38W

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

deque java是什麼?一起來看看吧:

deque java是一個雙端佇列介面,繼承自Queue介面,Deque的實現類是LinkedList、ArrayDeque、LinkedBlockingDeque,其中LinkedList是最常用的。

Deque有三種用途:

普通佇列(一端進另一端出):

Queue queue = new LinkedList()或Deque deque = new LinkedList()

雙端佇列(兩端都可進出)

Deque deque = new LinkedList()

堆疊

Deque deque = new LinkedList()

注意:Java堆疊Stack類已經過時,Java官方推薦使用Deque替代Stack使用。Deque堆疊操作方法:push()、pop()、peek()。

Deque是一個線性collection,支援在兩端插入和移除元素。名稱 deque 是“double ended queue(雙端佇列)”的縮寫,通常讀為“deck”。大多數 Deque 實現對於它們能夠包含的元素數沒有固定限制,但此介面既支持有容量限制的雙端佇列,也支援沒有固定大小限制的雙端佇列。

此介面定義在雙端佇列兩端訪問元素的方法。提供插入、移除和檢查元素的方法。每種方法都存在兩種形式:一種形式在操作失敗時丟擲異常,另一種形式返回一個特殊值(null 或 false,具體取決於操作)。插入操作的後一種形式是專為使用有容量限制的 Deque 實現設計的;在大多數實現中,插入操作不能失敗。

Deque介面擴充套件(繼承)了 Queue 介面。在將雙端佇列用作佇列時,將得到 FIFO(先進先出)行為。將元素新增到雙端佇列的末尾,從雙端佇列的開頭移除元素,從 Queue 介面繼承的方法完全等效於 Deque 方法。

雙端佇列也可用作 LIFO(後進先出)堆疊。應優先使用此介面而不是遺留 Stack 類。在將雙端佇列用作堆疊時,元素被推入雙端佇列的開頭並從雙端佇列開頭彈出,堆疊方法完全等效於 Deque 方法。

deque java

熱門標籤