Šioje pamokoje sužinosime apie „Deque“ sąsają, kaip ja naudotis ir jos metodus.
„ Deque
Java“ kolekcijų sistemos sąsaja suteikia dvigubos eilės funkcionalumą. Tai išplečia Queue
sąsają.
„Deque“ darbas
Įprastoje eilėje elementai pridedami iš galo ir pašalinami iš priekio. Tačiau atlikdami elementą, mes galime įterpti ir pašalinti elementus tiek iš priekio, tiek iš galo .
„Deque“ diegiančios klasės
Norėdami naudoti Deque
sąsajos funkcionalumą , turime naudoti klases, kurios ją įgyvendina:
- „ArrayDeque“
- „LinkedList“
Kaip naudoti „Deque“?
„Java“ turime importuoti java.util.Deque
paketą naudoti Deque
.
// Array implementation of Deque Deque animal1 = new ArrayDeque(); // LinkedList implementation of Deque Deque animal2 = new LinkedList();
Čia mes sukūrėme atitinkamai „ArrayDeque“ ir „LinkedList“ klasių objektus animal1 ir animal2. Šie objektai gali naudoti Deque
sąsajos funkcijas .
Deque metodai
Kadangi sąsaja Deque
pratęsiama Queue
, ji paveldi visus eilės sąsajos metodus.
Be Queue
sąsajoje prieinamų metodų , Deque
sąsajoje taip pat yra šie metodai:
- addFirst () - prideda nurodytą elementą deque pradžioje. Išmeta išimtį, jei deque yra pilnas.
- addLast () - prideda nurodytą elementą deque pabaigoje. Išmeta išimtį, jei deque yra pilnas.
- offerFirst () - prideda nurodytą elementą deque pradžioje. Grąžina,
false
jei deque yra pilnas. - offerLast () - prideda nurodytą elementą deque pabaigoje. Grąžina,
false
jei deque yra pilnas. - getFirst () - pateikia pirmąjį deque elementą. Išmeta išimtį, jei deque tuščias.
- getLast () - pateikia paskutinį deque elementą. Išmeta išimtį, jei deque yra tuščias.
- peekFirst () - pateikia pirmąjį deque elementą. Grąžina,
null
jei deque yra tuščias. - peekLast () - pateikia paskutinį deque elementą. Grąžina,
null
jei deque yra tuščias. - removeFirst () - grąžina ir pašalina pirmąjį deque elementą. Išmeta išimtį, jei deque yra tuščias.
- removeLast () - grąžina ir pašalina paskutinį deque elementą. Išmeta išimtį, jei deque tuščias.
- pollFirst () - grąžina ir pašalina pirmąjį deque elementą. Grąžina,
null
jei deque yra tuščias. - pollLast () - grąžina ir pašalina paskutinį deque elementą. Grąžina,
null
jei deque yra tuščias.
„Deque“ kaip „Stack Data Structure“
„ Stack
Java“ Collections
struktūros klasė suteikia rietuvės įgyvendinimą.
Tačiau rekomenduojama naudoti Deque
kaip „Stack“, o ne „Stack“ klasę. Taip yra todėl, kad metodai Stack
yra sinchronizuoti.
Toliau pateikiami Deque
sąsajos pateikiami būdai, kaip įgyvendinti kaminą:
push()
- prideda elementą deque pradžiojepop()
- pašalina elementą nuo deque pradžiospeek()
- grąžina elementą nuo deque pradžios
„Deque“ diegimas „ArrayDeque“ klasėje
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); ) )
Rezultatas
„Deque“: (3, 1, 2) Pirmasis elementas: 3 Paskutinis elementas: 2 Pašalintas pirmasis elementas: 3 Pašalintas paskutinis elementas: 2 Atnaujintas „Deque“: (1)
Norėdami sužinoti daugiau, apsilankykite „Java ArrayDeque“.