Java Deque 介面
java.util.Deque 介面是 java.util.Queue 介面的子型別,它支援在兩端插入和刪除元素。
介面宣告
public interface Deque<E> extends Queue<E>
ArrayDeque 類
java.util.ArrayDeque 類提供可調整大小的陣列並實現Deque 介面。以下是關於陣列 Deque 的重要幾點:
陣列 deque 沒有容量限制,因此它們會根據需要增長以支援使用。
它們不是執行緒安全的;在沒有外部同步的情況下。
它們不支援多個執行緒的併發訪問。
陣列 deque 中不允許使用空元素。
它們比 Stack 和 LinkedList 更快。
這個類及其迭代器實現了Collection 和Iterator 介面的所有可選方法。
類宣告
以下是java.util.ArrayDeque 類的宣告:
public class ArrayDeque<E> extends AbstractCollection<E> implements Deque<E>, Cloneable, Serializable
這裡<E> 代表一個元素,它可以是任何類。例如,如果您正在構建一個整數的陣列列表,那麼您將將其初始化為:
ArrayList<Integer> list = new ArrayList<Integer>();
類建構函式
序號 | 建構函式及說明 |
---|---|
1 | ArrayDeque() 此建構函式用於建立一個空的陣列 deque,其初始容量足以容納 16 個元素。 |
2 | ArrayDeque(Collection<? extends E> c) 此建構函式用於建立一個包含指定集合元素的 deque。 |
3 | ArrayDeque(int numElements) 此建構函式用於建立一個空的陣列 deque,其初始容量足以容納指定數量的元素。 |
示例
import java.util.ArrayDeque; import java.util.Deque; public class Tester { public static void main(String[] args) { // create an empty array deque with an initial capacity Deque<Integer> deque = new ArrayDeque<Integer>(5); // use add() method to add elements in the deque deque.add(20); deque.add(30); deque.add(20); deque.add(30); deque.add(15); deque.add(22); deque.add(11); // let us print all the elements available in deque for (Integer number : deque) { System.out.println("Number = " + number); } // getFirst() will retrieve element at first position int first = deque.getFirst(); System.out.println("Retrieved Element is = " + first); // getLast() will retrieve element at last position int last = deque.getLast(); System.out.println("Retrieved Element is = " + last); } }
輸出
Number = 20 Number = 30 Number = 20 Number = 30 Number = 15 Number = 22 Number = 11 Retrieved Element is = 20 Retrieved Element is = 11
廣告