Ebben az oktatóanyagban megismerhetjük a Deque felületet, annak használatát és módszereit.
A DequeJava gyűjtemények keretrendszere biztosítja a kettős végű sor funkcionalitását. Kiterjeszti az Queueinterfészt.
Deque műve
Rendes sorban az elemeket hátulról adják hozzá, és elölről távolítják el őket. Deque-ben azonban be tudjuk illeszteni és eltávolítani az elemeket elöl és hátul egyaránt .

A Deque-t megvalósító osztályok
A Dequefelület funkcionalitásának használatához olyan osztályokat kell használnunk, amelyek megvalósítják:
- ArrayDeque
- LinkedList

Hogyan kell használni a Deque-et?
A Java-ban importálnunk kell a java.util.Dequecsomagot Deque.
// Array implementation of Deque Deque animal1 = new ArrayDeque(); // LinkedList implementation of Deque Deque animal2 = new LinkedList();
Itt létrehoztuk az ArrayDeque és a LinkedList osztályú animal1 és animal2 objektumokat. Ezek az objektumok felhasználhatják az Dequeinterfész funkcióit .
A Deque módszerei
Mivel Dequekiterjeszti az Queueinterfészt, örökli a Queue felület összes metódusát.
Az Queueinterfészen elérhető módszerek mellett az Dequeinterfész a következő módszereket is tartalmazza:
- addFirst () - A megadott elemet hozzáadja a deque elejéhez. Kivételt dob, ha a deque tele van.
- addLast () - A megadott elemet hozzáadja a deque végéhez. Kivételt dob, ha a deque tele van.
- offerFirst () - Hozzáadja a megadott elemet a deque elejéhez. Visszatér,
falseha a deque teljes. - offerLast () - Hozzáadja a megadott elemet a deque végéhez. Visszatér,
falseha a deque teljes. - getFirst () - Visszaadja a deque első elemét. Kivételt dob, ha a deque üres.
- getLast () - Visszaadja a deque utolsó elemét. Kivételt dob, ha a deque üres.
- peekFirst () - Visszaadja a deque első elemét. Visszatér,
nullha a deque üres. - peekLast () - Visszaadja a deque utolsó elemét. Visszatér,
nullha a deque üres. - removeFirst () - Visszaadja és eltávolítja a deque első elemét. Kivételt dob, ha a deque üres.
- removeLast () - Visszaadja és eltávolítja a deque utolsó elemét. Kivételt dob, ha a deque üres.
- pollFirst () - Visszaadja és eltávolítja a deque első elemét. Visszatér,
nullha a deque üres. - pollLast () - Visszaadja és eltávolítja a deque utolsó elemét. Visszatér,
nullha a deque üres.
Deque mint verem adatstruktúra
A StackJava Collectionskeretrendszer osztálya biztosítja a verem megvalósítását.
Ugyanakkor ajánlott Dequeveremként használni a Stack osztály helyett. Ez azért van, mert a módszerek Stackszinkronizálva vannak.
Az Dequeinterfész a verem megvalósításához a következő módszereket kínálja:
push()- hozzáad egy elemet a deque elejénpop()- eltávolít egy elemet a deque elejérőlpeek()- a deque elejétől egy elemet ad vissza
A Deque megvalósítása az ArrayDeque osztályban
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); ) )
Kimenet
Deque: (3, 1, 2) Első elem: 3 Utolsó elem: 2 Eltávolított első elem: 3 Eltávolított utolsó elem: 2 Frissítve Deque: (1)
További információkért látogasson el a Java ArrayDeque oldalra.








