Java Deque

Šajā apmācībā mēs uzzināsim par Deque interfeisu, kā to izmantot, un tā metodēm.

DequeJava kolekcijas ietvaros saskarne nodrošina funkcionalitāti dubultā-beidzās rindā. Tas paplašina Queuesaskarni.

Deque darbs

Parastā rindā elementi tiek pievienoti no aizmugures un noņemti no priekšpuses. Tomēr dekā mēs varam ievietot un noņemt elementus gan no priekšpuses, gan aizmugures .

Klases, kas ievieš Deque

Lai izmantotu Dequesaskarnes funkcionalitāti , mums jāizmanto klases, kas to ievieš:

  • ArrayDeque
  • LinkedList

Kā lietot Deque?

Java valodā mums jāimportē java.util.Dequepakete lietošanai Deque.

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

Šeit mēs esam izveidojuši attiecīgi ArrayDeque un LinkedList klases objektus animal1 un animal2. Šie objekti var izmantot Dequesaskarnes funkcionalitāti .

Deque metodes

DequeQueueinterfeiss tiek paplašināts , tas pārņem visas rindas saskarnes metodes.

Papildus Queuesaskarnē pieejamajām metodēm Dequeinterfeiss ietver arī šādas metodes:

  • addFirst () - pievieno norādīto elementu deque sākumā. Izmet izņēmumu, ja deque ir pilns.
  • addLast () - pievieno norādīto elementu deque beigās. Izmet izņēmumu, ja deque ir pilns.
  • offerFirst () - pievieno norādīto elementu deque sākumā. Atgriež, falseja deque ir pilns.
  • offerLast () - pievieno norādīto elementu deque beigās. Atgriež, falseja deque ir pilns.
  • getFirst () - atgriež deque pirmo elementu. Izmet izņēmumu, ja deque ir tukšs.
  • getLast () - atgriež deque pēdējo elementu. Izmet izņēmumu, ja deque ir tukšs.
  • peekFirst () - atgriež deque pirmo elementu. Atgriež, nullja deque ir tukšs.
  • peekLast () - atgriež pēdējo deque elementu. Atgriež, nullja deque ir tukšs.
  • removeFirst () - atgriež un noņem pirmo deque elementu. Izmet izņēmumu, ja deque ir tukšs.
  • removeLast () - atgriež un noņem pēdējo deque elementu. Izmet izņēmumu, ja deque ir tukšs.
  • pollFirst () - atgriež un noņem pirmo deque elementu. Atgriež, nullja deque ir tukšs.
  • pollLast () - atgriež un noņem pēdējo deque elementu. Atgriež, nullja deque ir tukšs.

Deque kā kaudzes datu struktūra

StackJava klases Collectionsietvaros nodrošina īstenošanu kaudze.

Tomēr ieteicams izmantot Dequekā kaudzīti, nevis kaudzes klasi. Tas ir tāpēc, ka metodes Stackir sinhronizētas.

Šīs Dequesaskarnes metodes nodrošina kaudzes ieviešanu:

  • push() - pievieno elementu deque sākumā
  • pop() - noņem elementu no deque sākuma
  • peek() - atgriež elementu no deque sākuma

Deque ieviešana ArrayDeque klasē

 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); ) ) 

Rezultāts

 Deque: (3, 1, 2) Pirmais elements: 3 Pēdējais elements: 2 Noņemtais pirmais elements: 3 Noņemtais pēdējais elements: 2 Atjaunināts Deque: (1) 

Lai uzzinātu vairāk, apmeklējiet Java ArrayDeque.

Interesanti raksti...