Јава Куеуе Интерфаце

У овом упутству ћемо научити о интерфејсу Јава Куеуе и његовим методама.

QueueИнтерфејс збирки оквира Јава обезбеђује функционалност структуре ред података. Проширује Collectionинтерфејс.

Класе које примењују ред

Будући да Queueје интерфејс, не можемо га обезбедити директном применом.

Да бисмо користили функционалности система Queue, морамо да користимо класе које га примењују:

  • АрраиДекуе
  • ЛинкедЛист
  • ПриоритиКуеуе

Интерфејси који проширују Ред чекања

QueueИнтерфејс је такође проширен разним субинтерфацес:

  • Deque
  • BlockingQueue
  • BlockingDeque

Рад структуре података о реду

У редовима се елементи чувају и приступа им се на начин Први улаз, Први излаз . Односно, елементи се додају позади и уклањају сприједа .

Како се користи Куеуе?

У Јави морамо увозити 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(); 

Овде смо створили објекте анимал1, анимал2 и анимал3 класа LinkedList, ArrayDequeи PriorityQueueреспективно. Ови објекти могу да користе функционалности Queueинтерфејса.

Методе чекања

QueueИнтерфејс укључује све методе Collectionинтерфејса. То је зато што Collectionје супер интерфејс Queue.

Неке од најчешће коришћених метода Queueинтерфејса су:

  • адд () - Убацује наведени елемент у ред. Ако је задатак успешан, add()враћа се true, ако не, доноси изузетак.
  • оффер () - убацује наведени елемент у ред. Ако је задатак успешан, offer()враћа се true, ако не, враћа се false.
  • елемент () - Враћа главу реда. Баца изузетак ако је ред празан.
  • пеек () - Враћа главу реда. Враћа nullако је ред празан.
  • ремове () - Враћа и уклања главу реда. Баца изузетак ако је ред празан.
  • полл () - Враћа и уклања главу реда. Враћа nullако је ред празан.

Имплементација интерфејса реда

1. Примена класе ЛинкедЛист

 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) 

Да бисте сазнали више, посетите Јава ЛинкедЛист.

2. Примена класе ПриоритиКуеуе

 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) 

Да бисте сазнали више, посетите Јава ПриоритиКуеуе.

У следећим туторијалима ћемо Queueдетаљно научити различите подинтерфејсе интерфејса и његову примену.

Занимљиви Чланци...