Stack adalah koleksi yang mengikuti prinsip Last‑In, First‑Out (LIFO). Bayangkan tumpukan buku: hanya buku di atas yang dapat diambil. Logika yang sama berlaku untuk kelas .NET Stack—elemen ditambahkan di atas dengan Push dan dihapus dari atas dengan Pop.
Mendeklarasikan Stack
Buat instance stack dengan kata kunci new dan tetapkan ke variabel.
Stack st = new Stack();
Menambahkan Elemen – Push
Metode Push menempatkan elemen baru di atas stack.
st.Push(1);
Menghapus Elemen – Pop
Metode Pop menghapus dan mengembalikan elemen teratas.
var top = st.Pop();
Operasi Umum Lainnya
Count – Mengambil jumlah item dalam stack.
int total = st.Count;
Contains – Memeriksa apakah nilai tertentu ada.
bool hasThree = st.Contains(3);
Contoh Praktis 1: Menggunakan Push, Count, dan Contains
Di bawah ini adalah aplikasi konsol yang menunjukkan pembuatan stack, penyisipan elemen, enumerasi, dan kueri dasar.
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { // 1. Buat stack baru Stack st = new Stack(); // 2. Push tiga integer ke stack st.Push(1); st.Push(2); st.Push(3); // 3. Enumerasi stack – catat urutan LIFO foreach (Object obj in st) { Console.WriteLine(obj); } // 4. Output total jumlah Console.WriteLine($"\nJumlah elemen: {st.Count}"); // 5. Periksa apakah stack berisi nilai 3 Console.WriteLine($"Apakah stack berisi 3? {st.Contains(3)}"); Console.ReadKey(); } } }
Penjelasan
Kami mendeklarasikan Stack bernama st.
Tiga integer di-push; yang terakhir di-push (3) menjadi elemen teratas.
Menggunakan foreach mengenumerate stack dari atas ke bawah, menampilkan 3, 2, 1.
Count mengembalikan 3, mengonfirmasi tiga item.
Contains(3) mengembalikan true, membuktikan bahwa 3 ada.
Menjalankan program ini menghasilkan output berikut:
Contoh Praktis 2: Menghapus Elemen Teratas dengan Pop
Di sini adalah ilustrasi singkat dari metode Pop dalam aksi.
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { Stack st = new Stack(); st.Push(1); st.Push(2); st.Push(3); // Hapus elemen teratas (3) st.Pop(); foreach (Object obj in st) { Console.WriteLine(obj); } Console.ReadKey(); } } }
Penjelasan
Setelah mem-push 1, 2, dan 3, puncak stack adalah 3.
Memanggil Pop() menghapus 3, meninggalkan 2 dan 1.
Enumerasi mencetak 2 diikuti oleh 1.
Output program:
Poin Utama
Sebuah Stack beroperasi pada LIFO.
Gunakan Push untuk menambahkan dan Pop untuk menghapus elemen teratas.
Pembantu tambahan: Count untuk ukuran, Contains untuk pemeriksaan keanggotaan.