Nó đại diện cho một bộ sưu tập của các đối tượng last-in, first out. Nó được sử dụng khi bạn cần truy cập các items vào sau ra trước. Khi bạn thêm một item vào danh sách, nó được gọi là pushing item và khi bạn gỡ bỏ nó, nó được gọi là popping item.
Phương thức và thuộc tính của các lớp Stack
Bảng dưới đây liệt kê một số các thuộc tính thường dùng của lớp Stack:
Phương thức | Mô tả |
Count | Gets số phần tử chứa trong Stack. |
Bảng sau đây liệt kê một số phương thức thường được sử dụng của lớp Stack:
STT | Phương thức |
1 | public virtual void Clear();
Loại bỏ tất cả các phần tử của Stack. |
2 | public virtual bool Contains(object obj);
Xác định xem một phần tử có trong Stack hay không. |
3 | public virtual object Peek();
Trả về đối tượng ở đầu Stack mà không loại bỏ nó. |
4 | public virtual object Pop();
Loại bỏ và trả về đối tượng ở trên cùng của Stack. |
5 | public virtual void Push(object obj);
Chèn một đối tượng vào trên cùng của Stack. |
6 | public virtual object[] ToArray();
Sao chép Stack để tạo ra một mảng mới. |
Ví dụ
Ví dụ sau đây mô tả việc sử dụng Stack:
using System; using System.Collections; namespace CollectionsApplication { class Program { static void Main(string[] args) { Stack st = new Stack(); //Tạo ra một stack st.Push('A'); st.Push('M'); st.Push('G'); st.Push('W'); Console.WriteLine("Stack hien tai: "); foreach (char c in st) { Console.Write(c + " "); } Console.WriteLine(); st.Push('V'); st.Push('H'); Console.WriteLine("Gia tri tiep theo trong ngan xep: {0}", st.Peek()); Console.WriteLine("Stack hien tai: "); foreach (char c in st) { Console.Write(c + " "); } Console.WriteLine(); Console.WriteLine("Xoa bo mot so gia tri "); st.Pop(); st.Pop(); st.Pop(); Console.WriteLine("Stack hien tai: "); foreach (char c in st) { Console.Write(c + " "); } } } }
Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra các kết quả như sau:
Stack hien tai: W G M A Gia tri tiep theo trong ngan xep: H Stack hien tai: H V W G M A Xoa bo mot so gia tri Stack hien tai: G M A
Chúc bạn thành công!