Dalam tutorial ini, kita akan belajar mengenai kelas Java Stack dan kaedahnya dengan bantuan contoh.
Kerangka koleksi Java mempunyai kelas bernama Stackyang menyediakan fungsi struktur data tumpukan.
The Stackkelas memanjangkan Vectorkelas.

Pelaksanaan Stack
Dalam timbunan, elemen disimpan dan diakses dengan cara Last In First Out . Artinya, elemen ditambahkan ke bahagian atas timbunan dan dikeluarkan dari bahagian atas timbunan.

Membuat Tumpukan
Untuk membuat timbunan, kita mesti mengimport java.util.Stackpakej terlebih dahulu. Setelah kami mengimport pakej, berikut adalah bagaimana kita dapat membuat timbunan di Java.
Stack stacks = new Stack();
Di sini, Typemenunjukkan jenis timbunan. Sebagai contoh,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Kaedah Tumpukan
Sejak Stackmelanjutkan Vectorkelas, ia mewarisi semua kaedah Vector. Untuk mengetahui Vectorkaedah yang berbeza , kunjungi Java Vector Class.
Selain kaedah ini, Stackkelas ini merangkumi 5 kaedah lagi yang membezakannya Vector.
tolak () Kaedah
Untuk menambahkan elemen ke bahagian atas timbunan, kami menggunakan push()kaedahnya. Sebagai contoh,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); ) )
Pengeluaran
Tumpukan: (Anjing, Kuda, Kucing)
pop () Kaedah
Untuk mengeluarkan elemen dari bahagian atas timbunan, kami menggunakan pop()kaedahnya. Sebagai contoh,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Initial Stack: " + animals); // Remove element stacks String element = animals.pop(); System.out.println("Removed Element: " + element); ) )
Pengeluaran
Tumpuan Awal: (Anjing, Kuda, Kucing) Elemen yang Dihapus: Kucing
mengintip () Kaedah
The peek()Cara mengembalikan objek dari bahagian atas tindanan. Sebagai contoh,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Access element from the top String element = animals.peek(); System.out.println("Element at top: " + element); ) )
Pengeluaran
Tumpukan: (Anjing, Kuda, Kucing) Elemen di atas: Kucing
cari () Kaedah
Untuk mencari elemen dalam timbunan, kami menggunakan search()kaedahnya. Ia mengembalikan kedudukan elemen dari bahagian atas timbunan. Sebagai contoh,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Search an element int position = animals.search("Horse"); System.out.println("Position of Horse: " + position); ) )
Pengeluaran
Tumpukan: (Anjing, Kuda, Kucing) Kedudukan Kuda: 2
kosong () Kaedah
Untuk memeriksa sama ada timbunan kosong atau tidak, kami menggunakan empty()kaedahnya. Sebagai contoh,
import java.util.Stack; class Main ( public static void main(String() args) ( Stack animals= new Stack(); // Add elements to Stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // Check if stack is empty boolean result = animals.empty(); System.out.println("Is the stack empty? " + result); ) )
Pengeluaran
Tumpukan: (Anjing, Kuda, Kucing) Adakah timbunannya kosong? salah
Gunakan ArrayDeque Bukan Stack
The Stackkelas menyediakan pelaksanaan langsung struktur data timbunan. Walau bagaimanapun, disyorkan untuk tidak menggunakannya. Sebaliknya, gunakan ArrayDequekelas (mengimplementasikan Dequeantara muka) untuk melaksanakan struktur data tumpukan di Java.
Untuk mengetahui lebih lanjut, lawati:
- Java ArrayDeque
- Mengapa menggunakan Deque over Stack?








