Bu eğiticide, Java Queue arayüzü ve yöntemleri hakkında bilgi edineceğiz.
QueueJava koleksiyonları çerçeve arayüz kuyruk veri yapısı işlevi sağlar. CollectionArayüzü genişletir .
Sırayı Uygulayan Sınıflar
Yana Queuebir arayüz ise, biz bu doğrudan uygulanmasını sağlayamaz.
İşlevselliklerini kullanmak için Queue, onu uygulayan sınıfları kullanmamız gerekir:
- ArrayDeque
- Bağlantılı liste
- PriorityQueue

Kuyruğu genişleten arayüzler
QueueArayüz ayrıca çeşitli subinterfaces uzatılır:
DequeBlockingQueueBlockingDeque

Kuyruk Veri Yapısının Çalışması
Kuyruklarda öğeler saklanır ve İlk Giren İlk Çıkar şeklinde erişilir . Kendisine, elemanlar vardır arkasında eklenen ve önden kaldırılmış .

Queue nasıl kullanılır?
Java'da java.util.Queuekullanmak için paketi içe aktarmalıyız 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();
Burada, nesneler animal1, animal2 ve sınıfların animal3 yarattık LinkedList, ArrayDequeve PriorityQueuesırasıyla. Bu nesneler Queuearayüzün işlevlerini kullanabilir .
Kuyruk Yöntemleri
QueueArayüzü tüm yöntemleri kapsamaktadır Collectionarayüz. Bunun nedeni Collectionsüper arayüzü olmasıdır Queue.
QueueArayüzün yaygın olarak kullanılan yöntemlerinden bazıları şunlardır:
- add () - Belirtilen öğeyi kuyruğa ekler. Görev başarılı olursa,
add()geri dönertrue, değilse bir istisna atar. - offer () - Belirtilen öğeyi kuyruğa ekler. Görev başarılı olursa,
offer()geritruedönmezse dönerfalse. - element () - Kuyruğun başını döndürür. Kuyruk boşsa bir istisna atar.
- peek () - Sıranın başını döndürür. İade
nullkuyruk boşsa. - remove () - Sıranın başını döndürür ve kaldırır. Kuyruk boşsa bir istisna atar.
- anket () - Sıranın başını döndürür ve kaldırır. İade
nullkuyruk boşsa.
Kuyruk Arayüzünün Uygulanması
1. LinkedList Sınıfını Uygulama
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); ) )
Çıktı
Kuyruk: (1, 2, 3) Erişilen Öğe: 1 Kaldırılmış Öğe: 1 Güncellenmiş Kuyruk: (2, 3)
Daha fazla bilgi edinmek için Java LinkedList'i ziyaret edin.
2. PriorityQueue Sınıfını Uygulama
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); ) )
Çıktı
Kuyruk: (1, 5, 2) Erişilen Öğe: 1 Kaldırılmış Öğe: 1 Güncellenmiş Kuyruk: (2, 5)
Daha fazla bilgi edinmek için Java PriorityQueue adresini ziyaret edin.
Sonraki eğitimlerde, Queuearayüzün farklı alt arayüzlerini ve uygulanmasını ayrıntılı olarak öğreneceğiz .








