Java Deque

Dalam tutorial ini, kita akan belajar tentang antarmuka Deque, cara menggunakannya, dan metodenya.

The Dequeantarmuka dari koleksi kerangka Java menyediakan fungsionalitas antrian double-berakhir. Ini memperluas Queueantarmuka.

Bekerja dari Deque

Dalam antrian biasa, elemen ditambahkan dari belakang dan dihapus dari depan. Namun, dalam deque, kami dapat memasukkan dan menghapus elemen dari depan dan belakang .

Kelas yang menerapkan Deque

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

  • ArrayDeque
  • LinkedList

Bagaimana cara menggunakan Deque?

Di Java, kita harus mengimpor java.util.Dequepaket untuk digunakan Deque.

 // Array implementation of Deque Deque animal1 = new ArrayDeque(); // LinkedList implementation of Deque Deque animal2 = new LinkedList(); 

Di sini, kami telah membuat objek animal1 dan animal2 dari kelas ArrayDeque dan LinkedList, masing-masing. Objek-objek ini dapat menggunakan fungsionalitas Dequeantarmuka.

Metode Deque

Sejak Dequememperluas Queueantarmuka, itu mewarisi semua metode antarmuka Antrian.

Selain metode yang tersedia di Queueantarmuka, Dequeantarmuka juga menyertakan metode berikut:

  • addFirst () - Menambahkan elemen yang ditentukan di awal deque. Melempar pengecualian jika deque sudah penuh.
  • addLast () - Menambahkan elemen yang ditentukan di akhir deque. Melempar pengecualian jika deque sudah penuh.
  • offerFirst () - Menambahkan elemen yang ditentukan di awal deque. Mengembalikan falsejika deque sudah penuh.
  • offerLast () - Menambahkan elemen tertentu di akhir deque. Mengembalikan falsejika deque sudah penuh.
  • getFirst () - Mengembalikan elemen pertama deque. Melempar pengecualian jika deque kosong.
  • getLast () - Mengembalikan elemen terakhir dari deque. Melempar pengecualian jika deque kosong.
  • peekFirst () - Mengembalikan elemen pertama deque. Menampilkan nulljika deque kosong.
  • peekLast () - Mengembalikan elemen terakhir dari deque. Menampilkan nulljika deque kosong.
  • removeFirst () - Mengembalikan dan menghapus elemen pertama deque. Melempar pengecualian jika deque kosong.
  • removeLast () - Mengembalikan dan menghapus elemen terakhir dari deque. Melempar pengecualian jika deque kosong.
  • pollFirst () - Mengembalikan dan menghapus elemen pertama deque. Menampilkan nulljika deque kosong.
  • pollLast () - Mengembalikan dan menghapus elemen terakhir dari deque. Menampilkan nulljika deque kosong.

Deque sebagai Stack Data Structure

The Stackkelas dari Java Collectionsframework menyediakan implementasi stack.

Namun, disarankan untuk menggunakan Dequesebagai tumpukan alih-alih kelas Stack. Itu karena metode Stackdisinkronkan.

Berikut adalah metode yang Dequedisediakan antarmuka untuk mengimplementasikan tumpukan:

  • push() - menambahkan elemen di awal deque
  • pop() - menghapus elemen dari awal deque
  • peek() - mengembalikan elemen dari awal deque

Implementasi Deque di Kelas ArrayDeque

 import java.util.Deque; import java.util.ArrayDeque; class Main ( public static void main(String() args) ( // Creating Deque using the ArrayDeque class Deque numbers = new ArrayDeque(); // add elements to the Deque numbers.offer(1); numbers.offerLast(2); numbers.offerFirst(3); System.out.println("Deque: " + numbers); // Access elements of the Deque int firstElement = numbers.peekFirst(); System.out.println("First Element: " + firstElement); int lastElement = numbers.peekLast(); System.out.println("Last Element: " + lastElement); // Remove elements from the Deque int removedNumber1 = numbers.pollFirst(); System.out.println("Removed First Element: " + removedNumber1); int removedNumber2 = numbers.pollLast(); System.out.println("Removed Last Element: " + removedNumber2); System.out.println("Updated Deque: " + numbers); ) ) 

Keluaran

 Deque: (3, 1, 2) Elemen Pertama: 3 Elemen Terakhir: 2 Elemen Pertama Dihapus: 3 Elemen Terakhir Dihapus: 2 Deque yang Diperbarui: (1) 

Untuk mempelajari lebih lanjut, kunjungi Java ArrayDeque.

Artikel yang menarik...