Java Deque

V tej vadnici bomo spoznali vmesnik Deque, kako ga uporabljati in njegove metode.

DequeVmesnik okviru Java zbirk zagotavlja funkcionalnost dvojno končalo čakalno vrsto. Razširi Queuevmesnik.

Delo Deque

V običajni čakalni vrsti se elementi dodajo od zadaj in odstranijo od spredaj. V deque lahko vstavimo in odstranimo elemente tako spredaj kot zadaj .

Razredi, ki izvajajo Deque

Za uporabo funkcionalnosti Dequevmesnika moramo uporabiti razrede, ki ga izvajajo:

  • ArrayDeque
  • LinkedList

Kako uporabljati Deque?

V Javi moramo java.util.Dequepaket uvoziti za uporabo Deque.

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

Tu smo ustvarili predmete animal1 in animal2 razredov ArrayDeque oziroma LinkedList. Ti predmeti lahko uporabljajo funkcionalnosti Dequevmesnika.

Metode Deque

Ker Dequerazširja Queuevmesnik, podeduje vse metode vmesnika Queue.

Poleg načinov, ki so na voljo v Queuevmesniku, Dequevmesnik vključuje tudi naslednje metode:

  • addFirst () - doda navedeni element na začetku deque. Vrne izjemo, če je deque poln.
  • addLast () - doda navedeni element na koncu deque. Vrne izjemo, če je deque poln.
  • offerFirst () - doda navedeni element na začetku deque. Vrne, falseče je deque poln.
  • offerLast () - doda navedeni element na koncu deque. Vrne, falseče je deque poln.
  • getFirst () - Vrne prvi element deque. Vrne izjemo, če je deque prazen.
  • getLast () - Vrne zadnji element deque. Vrne izjemo, če je deque prazen.
  • peekFirst () - Vrne prvi element deque. Vrne, nullče je deque prazen.
  • peekLast () - Vrne zadnji element deque. Vrne, nullče je deque prazen.
  • removeFirst () - Vrne in odstrani prvi element deque. Vrne izjemo, če je deque prazen.
  • removeLast () - Vrne in odstrani zadnji element deque. Vrne izjemo, če je deque prazen.
  • pollFirst () - vrne in odstrani prvi element deque. Vrne, nullče je deque prazen.
  • pollLast () - vrne in odstrani zadnji element deque. Vrne, nullče je deque prazen.

Deque kot struktura podatkovnega sklada

StackRazred Java Collectionsokvira zagotavlja izvajanje dimnika.

Vendar je priporočljivo, da se uporablja Dequekot sklad namesto razreda Stack. To je zato, ker so metode Stacksinhronizirane.

Tu so metode, ki jih Dequevmesnik ponuja za izvedbo sklada:

  • push() - doda element na začetku deque
  • pop() - odstrani element z začetka deque
  • peek() - vrne element z začetka deque

Izvajanje funkcije Deque v razredu 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); ) ) 

Izhod

 Deque: (3, 1, 2) Prvi element: 3 Zadnji element: 2 Odstranjen prvi element: 3 Odstranjen zadnji element: 2 Posodobljen Deque: (1) 

Če želite izvedeti več, obiščite Java ArrayDeque.

Zanimive Članki...