Dalam tutorial ini, kita akan belajar mengenai antara muka Deque, cara menggunakannya, dan kaedahnya.
Antara Deque
muka kerangka koleksi Java menyediakan fungsi antrian dua kali. Ia meluaskan Queue
antara muka.
Bekerja Deque
Dalam barisan biasa, elemen ditambahkan dari belakang dan dikeluarkan dari depan. Namun, dalam bentuk deque, kita dapat memasukkan dan mengeluarkan elemen dari depan dan belakang .
Kelas yang melaksanakan Deque
Untuk menggunakan fungsi Deque
antara muka, kita perlu menggunakan kelas yang melaksanakannya:
- ArrayDeque
- Senarai Terpaut
Bagaimana cara menggunakan Deque?
Di Jawa, kita mesti mengimport java.util.Deque
paket 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 fungsi Deque
antara muka.
Kaedah Deque
Sejak Deque
memperluas Queue
antara muka, ia mewarisi semua kaedah antara muka Antrian.
Selain kaedah yang terdapat di Queue
antara muka, Deque
antara muka juga merangkumi kaedah berikut:
- addFirst () - Menambah elemen yang ditentukan pada awal deque. Melontarkan pengecualian jika hiasan itu penuh.
- addLast () - Menambah elemen yang ditentukan di hujung deque. Melontarkan pengecualian jika hiasan itu penuh.
- offerFirst () - Menambah elemen yang ditentukan pada awal deque. Kembali
false
jika deque penuh. - offerLast () - Menambah elemen yang ditentukan di hujung deque. Kembali
false
jika deque penuh. - getFirst () - Mengembalikan elemen pertama deque. Melontarkan pengecualian sekiranya deque itu kosong.
- getLast () - Mengembalikan elemen terakhir dari deque. Melontarkan pengecualian sekiranya deque itu kosong.
- peekFirst () - Mengembalikan elemen pertama deque. Kembali
null
jika deque kosong. - peekLast () - Mengembalikan elemen terakhir dari deque. Kembali
null
jika deque kosong. - removeFirst () - Mengembalikan dan membuang unsur pertama deque. Melontarkan pengecualian sekiranya deque itu kosong.
- removeLast () - Mengembalikan dan membuang unsur terakhir dari deque. Melontarkan pengecualian sekiranya deque itu kosong.
- pollFirst () - Mengembalikan dan membuang unsur pertama deque. Kembali
null
jika deque kosong. - pollLast () - Mengembalikan dan membuang unsur terakhir dari deque. Kembali
null
jika deque kosong.
Deque sebagai Stack Data Struktur
The Stack
kelas Jawa Collections
rangka kerja menyediakan pelaksanaan timbunan.
Walau bagaimanapun, disarankan untuk digunakan Deque
sebagai tumpukan dan bukannya kelas Stack. Ini kerana kaedah Stack
yang diselaraskan.
Berikut adalah kaedah yang disediakan Deque
antara muka untuk melaksanakan timbunan:
push()
- menambah elemen pada awal dequepop()
- menghilangkan unsur dari awal dequepeek()
- mengembalikan elemen dari awal deque
Pelaksanaan Deque di ArrayDeque Class
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); ) )
Pengeluaran
Deque: (3, 1, 2) Elemen Pertama: 3 Elemen Terakhir: 2 Elemen Pertama yang Dihapus: 3 Elemen Terakhir yang Dihapus: 2 Deque yang dikemas kini: (1)
Untuk mengetahui lebih lanjut, lawati Java ArrayDeque.