Java Sıra Arayüzü

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:

  • Deque
  • BlockingQueue
  • BlockingDeque

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öner true, değilse bir istisna atar.
  • offer () - Belirtilen öğeyi kuyruğa ekler. Görev başarılı olursa, offer()geri truedönmezse döner false.
  • 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 .

Ilginç makaleler...