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 dequepop()- menghapus elemen dari awal dequepeek()- 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.








