Java Deque

V tejto príručke sa dozvieme o rozhraní Deque, o tom, ako ho používať, a o jeho metódach.

DequeRozhranie zbierok rámca Java poskytuje funkcie double-ended fronty. Rozširuje Queuerozhranie.

Pracovné Deque

V pravidelnom poradí sú prvky pridávané zozadu a odstránené spredu. V deque však môžeme vkladať a vyberať prvky spredu aj zozadu .

Triedy, ktoré implementujú Deque

Aby sme mohli využívať funkcie Dequerozhrania, musíme použiť triedy, ktoré ho implementujú:

  • ArrayDeque
  • LinkedList

Ako používať Deque?

V prostredí Java musíme importovať java.util.Dequebalík, ktorý chcete použiť Deque.

 // Array implementation of Deque Deque animal1 = new ArrayDeque(); // LinkedList implementation of Deque Deque animal2 = new LinkedList(); 

Tu sme vytvorili objekty animal1 a animal2 z tried ArrayDeque a LinkedList. Tieto objekty môžu využívať funkcie Dequerozhrania.

Metódy Deque

Pretože Dequerozširuje Queuerozhranie, dedí všetky metódy rozhrania frontu.

Okrem metód dostupných v Queuerozhraní obsahuje Dequerozhranie aj nasledujúce metódy:

  • addFirst () - pridá zadaný prvok na začiatok deque. Ak je dekáda plná, hodí výnimku.
  • addLast () - pridá zadaný prvok na koniec deque. Ak je dekáda plná, hodí výnimku.
  • offerFirst () - pridá zadaný prvok na začiatok deque. Vráti sa, falseak je dekáda plná.
  • offerLast () - pridá zadaný prvok na koniec deque. Vráti sa, falseak je dekáda plná.
  • getFirst () - Vráti prvý prvok deque. Ak je deque prázdny, hodí výnimku.
  • getLast () - Vráti posledný prvok deque. Ak je deque prázdny, hodí výnimku.
  • peekFirst () - Vráti prvý prvok deque. Vráti sa, nullak je deque prázdny.
  • peekLast () - Vráti posledný prvok deque. Vráti sa, nullak je deque prázdny.
  • removeFirst () - Vráti a odstráni prvý prvok deque. Ak je deque prázdny, hodí výnimku.
  • removeLast () - Vráti a odstráni posledný prvok deque. Ak je deque prázdny, hodí výnimku.
  • pollFirst () - Vráti a odstráni prvý prvok deque. Vráti sa, nullak je deque prázdny.
  • pollLast () - Vráti a odstráni posledný prvok deque. Vráti sa, nullak je deque prázdny.

Deque ako štruktúra dát stohu

StackTrieda Java Collectionsrámca poskytuje implementáciu stohu.

Odporúča sa však použiť Dequeako zásobník namiesto triedy Stack. Je to preto, lebo metódy Stacksú synchronizované.

Tu sú metódy, ktoré Dequerozhranie poskytuje na implementáciu zásobníka:

  • push() - pridá prvok na začiatok deque
  • pop() - odstráni prvok zo začiatku deque
  • peek() - vráti prvok zo začiatku deque

Implementácia Deque v triede ArrayDeque

 import java.util.Deque; import java.util.ArrayDeque; class Main ( public static void main(String() args) ( // Creating Deque using the ArrayDeque class Deque numbers = new ArrayDeque(); // add elements to the Deque numbers.offer(1); numbers.offerLast(2); numbers.offerFirst(3); System.out.println("Deque: " + numbers); // Access elements of the Deque int firstElement = numbers.peekFirst(); System.out.println("First Element: " + firstElement); int lastElement = numbers.peekLast(); System.out.println("Last Element: " + lastElement); // Remove elements from the Deque int removedNumber1 = numbers.pollFirst(); System.out.println("Removed First Element: " + removedNumber1); int removedNumber2 = numbers.pollLast(); System.out.println("Removed Last Element: " + removedNumber2); System.out.println("Updated Deque: " + numbers); ) ) 

Výkon

 Deque: (3, 1, 2) Prvý element: 3 Posledný element: 2 Odstránený Prvý element: 3 Odstránený posledný element: 2 Aktualizovaný Deque: (1) 

Ak sa chcete dozvedieť viac, navštívte Java ArrayDeque.

Zaujímavé články...