Antarmuka Antrian Java

Dalam tutorial ini, kita akan belajar tentang antarmuka Java Queue dan metodenya.

The Queueantarmuka dari koleksi kerangka Java menyediakan fungsionalitas dari struktur data antrian. Ini memperluas Collectionantarmuka.

Kelas yang Menerapkan Antrian

Karena Queueadalah antarmuka, kami tidak dapat menyediakan implementasi langsungnya.

Untuk menggunakan fungsionalitas Queue, kita perlu menggunakan kelas yang mengimplementasikannya:

  • ArrayDeque
  • LinkedList
  • PriorityQueue

Antarmuka yang memperluas Antrian

The Queueantarmuka juga diperpanjang oleh berbagai subinterfaces:

  • Deque
  • BlockingQueue
  • BlockingDeque

Cara Kerja Struktur Data Antrian

Dalam antrian, elemen disimpan dan diakses dengan cara First In, First Out . Artinya, elemen ditambahkan dari belakang dan dihilangkan dari depan .

Bagaimana cara menggunakan Queue?

Di Jawa, kita harus mengimpor java.util.Queuepaket untuk digunakan 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(); 

Di sini, kita telah membuat objek kelas animal1, animal2 dan animal3 LinkedList, ArrayDequedan PriorityQueuemasing - masing. Objek-objek ini dapat menggunakan fungsionalitas Queueantarmuka.

Metode Antrian

The Queueantarmuka mencakup semua metode yang Collectionantarmuka. Itu karena Collectionantarmuka super Queue.

Beberapa metode Queueantarmuka yang umum digunakan adalah:

  • add () - Menyisipkan elemen yang ditentukan ke dalam antrian. Jika tugas berhasil, add()kembalikan true, jika tidak, akan muncul pengecualian.
  • offer () - Menyisipkan elemen tertentu ke dalam antrian. Jika tugas berhasil, offer()kembalikan true, jika tidak kembalikan false.
  • element () - Mengembalikan kepala antrian. Melempar pengecualian jika antrian kosong.
  • peek () - Mengembalikan kepala antrian. Kembali nulljika antrian kosong.
  • remove () - Mengembalikan dan menghapus kepala antrian. Melempar pengecualian jika antrian kosong.
  • poll () - Mengembalikan dan menghapus kepala antrian. Kembali nulljika antrian kosong.

Implementasi Antarmuka Antrian

1. Menerapkan Kelas 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); ) ) 

Keluaran

 Antrian: (1, 2, 3) Elemen yang Diakses: 1 Elemen yang Dihapus: 1 Antrian yang Diperbarui: (2, 3) 

Untuk mempelajari lebih lanjut, kunjungi Java LinkedList.

2. Menerapkan Kelas 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); ) ) 

Keluaran

 Antrian: (1, 5, 2) Elemen yang Diakses: 1 Elemen yang Dihapus: 1 Antrian yang Diperbarui: (2, 5) 

Untuk mempelajari lebih lanjut, kunjungi Java PriorityQueue.

Dalam tutorial berikutnya, kita akan belajar tentang subinterfaces berbeda dari Queueantarmuka dan implementasinya secara detail.

Artikel yang menarik...