Интерфейс на Java Queue

В този урок ще научим за интерфейса на Java Queue и неговите методи.

В Queueинтерфейса на колекции рамките на Java предоставя функционалност на структурата на опашка данни. Той разширява Collectionинтерфейса.

Класове, които прилагат опашка

Тъй Queueкато интерфейсът е, не можем да осигурим директното му изпълнение.

За да използваме функционалностите на Queue, трябва да използваме класове, които го реализират:

  • ArrayDeque
  • LinkedList
  • PriorityQueue

Интерфейси, които разширяват Queue

В Queueинтерфейса също се удължава с различни subinterfaces:

  • Deque
  • BlockingQueue
  • BlockingDeque

Работа на структурата на данните за опашката

В опашки, елементите са съхранени и достъпни във Първо, пръв излязъл начин. Тоест елементи се добавят отзад и се отстраняват отпред .

Как да използвам опашката?

В Java трябва да импортираме java.util.Queueпакет, за да го използваме 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(); 

Ето, ние сме създали обекти animal1, animal2 и animal3 на класове LinkedList, ArrayDequeи PriorityQueueсъответно. Тези обекти могат да използват функционалностите на Queueинтерфейса.

Методи на опашката

В Queueинтерфейса включва всички методи на Collectionинтерфейса. Това е така, защото Collectionе супер интерфейсът на Queue.

Някои от често използваните методи на Queueинтерфейса са:

  • add () - Вмъква посочения елемент в опашката. Ако задачата е успешна, add()връща се true, ако не , извежда изключение.
  • offer () - Вмъква посочения елемент в опашката. Ако задачата е успешна, се offer()връща true, ако не се връща false.
  • element () - Връща главата на опашката. Изхвърля изключение, ако опашката е празна.
  • peek () - Връща главата на опашката. Връща, nullако опашката е празна.
  • remove () - Връща и премахва главата на опашката. Изхвърля изключение, ако опашката е празна.
  • poll () - Връща и премахва главата на опашката. Връща, nullако опашката е празна.

Внедряване на интерфейса на опашката

1. Внедряване на класа LinkedList

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

Изход

 Опашка: (1, 2, 3) Достъпен елемент: 1 Премахнат елемент: 1 Актуализирана опашка: (2, 3) 

За да научите повече, посетете Java LinkedList.

2. Внедряване на клас PriorityQueue

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

Изход

 Опашка: (1, 5, 2) Достъпен елемент: 1 Премахнат елемент: 1 Актуализирана опашка: (2, 5) 

За да научите повече, посетете Java PriorityQueue.

В следващите уроци ще научим подробно за различните подинтерфейси на Queueинтерфейса и неговото изпълнение.

Интересни статии...