„Java“ eilės sąsaja

Šioje pamokoje sužinosime apie „Java Queue“ sąsają ir jos metodus.

QueueJava kolekcijų “ sąsaja suteikia eilės duomenų struktūros funkcionalumą. Tai išplečia Collectionsąsają.

Klasės, kurios įgyvendina eilę

Kadangi tai Queueyra sąsaja, negalime tiesiogiai jos įgyvendinti.

Norėdami naudoti „“ funkcionalumą Queue, turime naudoti klases, kurios tai įgyvendina:

  • „ArrayDeque“
  • „LinkedList“
  • „PriorityQueue“

Sąsajos, pratęsiančios eilę

QueueSąsaja taip pat pratęsė įvairių subinterfaces:

  • Deque
  • BlockingQueue
  • BlockingDeque

Eilės duomenų struktūros darbas

Eilėse elementai saugomi ir prieinami „ First In“, „First Out“ būdu. Tai yra, elementai pridedami iš užpakalio ir pašalinami iš priekio .

Kaip naudoti eilę?

Jei java.util.Queuenorite naudoti „ Java“, turime importuoti paketą Queue.

 // LinkedList implementation of Queue Queue animal1 = new LinkedList(); // Array implementation of Queue Queue animal2 = new ArrayDeque(); // Priority Queue implementation of Queue Queue animal 3 = new PriorityQueue(); 

Čia, mes sukūrėme objektai animal1, animal2 ir animal3 klasių LinkedList, ArrayDequeir PriorityQueueatitinkamai. Šie objektai gali naudoti Queuesąsajos funkcijas .

Eilės metodai

QueueSąsaja apima visus metodus Collectionsąsaja. Taip yra todėl, kad Collectionyra super sąsaja Queue.

Kai kurie dažniausiai naudojami Queuesąsajos metodai yra šie:

  • add () - įterpia nurodytą elementą į eilę. Jei užduotis yra sėkminga, add()grįžta true, jei ne, ji išmeta išimtį.
  • pasiūlymas () - įterpia nurodytą elementą į eilę. Jei užduotis sėkminga, offer()grįžta true, jei ne false.
  • elementas () - pateikia eilės galvą. Išmeta išimtį, jei eilė tuščia.
  • žvilgtelėti () - pateikia eilės galvą. Grąžina, nulljei eilė tuščia.
  • pašalinti () - grąžina ir pašalina eilės galvą. Išmeta išimtį, jei eilė tuščia.
  • apklausa () - grąžina ir pašalina eilės galvą. Grąžina, nulljei eilė tuščia.

Eilės sąsajos diegimas

1. „LinkedList“ klasės įgyvendinimas

 import java.util.Queue; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating Queue using the LinkedList class Queue numbers = new LinkedList(); // offer elements to the Queue numbers.offer(1); numbers.offer(2); numbers.offer(3); System.out.println("Queue: " + numbers); // Access elements of the Queue int accessedNumber = numbers.peek(); System.out.println("Accessed Element: " + accessedNumber); // Remove elements from the Queue int removedNumber = numbers.poll(); System.out.println("Removed Element: " + removedNumber); System.out.println("Updated Queue: " + numbers); ) ) 

Rezultatas

 Eilė: (1, 2, 3) Patekęs elementas: 1 Pašalintas elementas: 1 Atnaujinta eilė: (2, 3) 

Norėdami sužinoti daugiau, apsilankykite „Java LinkedList“.

2. „PriorityQueue“ klasės įgyvendinimas

 import java.util.Queue; import java.util.PriorityQueue; class Main ( public static void main(String() args) ( // Creating Queue using the PriorityQueue class Queue numbers = new PriorityQueue(); // offer elements to the Queue numbers.offer(5); numbers.offer(1); numbers.offer(2); System.out.println("Queue: " + numbers); // Access elements of the Queue int accessedNumber = numbers.peek(); System.out.println("Accessed Element: " + accessedNumber); // Remove elements from the Queue int removedNumber = numbers.poll(); System.out.println("Removed Element: " + removedNumber); System.out.println("Updated Queue: " + numbers); ) ) 

Rezultatas

 Eilė: (1, 5, 2) Patekęs elementas: 1 Pašalintas elementas: 1 Atnaujinta eilė: (2, 5) 

Norėdami sužinoti daugiau, apsilankykite „Java PriorityQueue“.

Kitose pamokose mes išsamiai sužinosime apie įvairias Queuesąsajos subinterfeisus ir jų įgyvendinimą.

Įdomios straipsniai...