Dalam tutorial ini, kita akan belajar tentang kelas Java Stack dan metodenya dengan bantuan contoh.
Kerangka koleksi Java memiliki kelas bernama Stack
yang menyediakan fungsionalitas struktur data tumpukan.
The Stack
kelas memperluas Vector
kelas.
Implementasi Stack
Dalam tumpukan, elemen disimpan dan diakses dengan cara Terakhir Masuk Pertama Keluar . Artinya, elemen ditambahkan ke bagian atas tumpukan dan dihapus dari bagian atas tumpukan.
Membuat Stack
Untuk membuat tumpukan, kita harus mengimpor java.util.Stack
paketnya terlebih dahulu. Setelah kami mengimpor paket, berikut adalah cara membuat tumpukan di Java.
Stack stacks = new Stack();
Di sini, Type
menunjukkan jenis tumpukan. Sebagai contoh,
// Create Integer type stack Stack stacks = new Stack(); // Create String type stack Stack stacks = new Stack();
Metode Stack
Sejak kelas Stack
meluas Vector
, itu mewarisi semua metode Vector
. Untuk mempelajari tentang Vector
metode yang berbeda , kunjungi Kelas Vektor Java.
Selain metode ini, Stack
kelas menyertakan 5 metode lagi yang membedakannya Vector
.
push () Metode
Untuk menambahkan elemen ke atas tumpukan, kami menggunakan push()
metode. 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); ) )
Keluaran
Tumpukan: (Anjing, Kuda, Kucing)
pop () Metode
Untuk menghapus elemen dari atas tumpukan, kami menggunakan pop()
metode. 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); ) )
Keluaran
Tumpukan Awal: (Anjing, Kuda, Kucing) Elemen yang Dihapus: Kucing
Peek () Metode
The peek()
Metode mengembalikan sebuah objek dari atas tumpukan. 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); ) )
Keluaran
Tumpukan: (Anjing, Kuda, Kucing) Elemen di atas: Kucing
search () Metode
Untuk mencari elemen dalam tumpukan, kami menggunakan search()
metode. Ini mengembalikan posisi elemen dari atas tumpukan. 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); ) )
Keluaran
Tumpukan: (Anjing, Kuda, Kucing) Posisi Kuda: 2
kosong () Metode
Untuk memeriksa apakah tumpukan kosong atau tidak, kami menggunakan empty()
metode ini. 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); ) )
Keluaran
Tumpukan: (Anjing, Kuda, Kucing) Apakah tumpukannya kosong? Salah
Gunakan ArrayDeque, bukan Stack
The Stack
kelas menyediakan implementasi langsung dari struktur data stack. Namun, disarankan untuk tidak menggunakannya. Sebagai gantinya, gunakan ArrayDeque
kelas (mengimplementasikan Deque
antarmuka) untuk mengimplementasikan struktur data tumpukan di Java.
Untuk mempelajari lebih lanjut, kunjungi:
- Java ArrayDeque
- Mengapa menggunakan Deque over Stack?