Lớp Stack trong C # đại diện cho một tập hợp đơn giản từ cuối vào đầu ra (LIFO) không chung chung của các đối tượng.
Sau đây là các thuộc tính của lớp Stack -
Sr.No | Thuộc tính &Mô tả |
---|---|
1 | Đếm Nhận số phần tử có trong Ngăn xếp. |
2 | Được đồng bộ hóa Nhận một giá trị cho biết quyền truy cập vào Ngăn xếp có được đồng bộ hóa hay không (an toàn chuỗi). |
3 | SyncRoot Nhận một đối tượng có thể được sử dụng để đồng bộ hóa truy cập vào Ngăn xếp. |
Sau đây là một số phương thức của lớp Stack -
Sr.No | Thuộc tính &Mô tả |
---|---|
1 | Clear () Loại bỏ tất cả các đối tượng khỏi ngăn xếp. |
2 | Sao chép () Tạo một bản sao nông của Ngăn xếp. |
3 | Chứa (Đối tượng) liệu một phần tử có trong Ngăn xếp hay không. |
4 | CopyTo (Mảng, Int32) Sao chép Ngăn xếp vào Mảng một chiều hiện có, bắt đầu từ chỉ mục mảng được chỉ định. |
5 | Bằng (Đối tượng) Xác định xem đối tượng được chỉ định có bằng đối tượng hiện tại hay không. |
6 | GetEnumerator () Trả về IEnumerator cho Ngăn xếp. |
7 | GetHashCode () Đóng vai trò là hàm băm mặc định. (Được kế thừa từ Đối tượng) |
8 | GetType () Rút ra loại của trường hợp hiện tại. |
9 | Peek () Trả về đối tượng ở trên cùng của Ngăn xếp mà không cần xóa đối tượng đó. |
10 | Pop () Loại bỏ và trả về đối tượng ở trên cùng của Ngăn xếp |
11 | Đẩy (Đối tượng) Chèn một đối tượng vào đầu Ngăn xếp. |
Ví dụ
Bây giờ chúng ta hãy xem một số ví dụ -
Để lấy đối tượng ở đầu Ngăn xếp, mã như sau -
using System; using System.Collections.Generic; public class Demo { public static void Main() { Stack<string> stack = new Stack<string>(); stack.Push("A"); stack.Push("B"); stack.Push("C"); stack.Push("D"); stack.Push("E"); stack.Push("F"); stack.Push("G"); stack.Push("H"); stack.Push("I"); stack.Push("J"); Console.WriteLine("Count of elements = "+stack.Count); Console.WriteLine("Element at the top of stack = " + stack.Peek()); } }
Đầu ra
Điều này sẽ tạo ra kết quả sau -
Count of elements = 10 Element at the top of stack = J Count of elements = 10
Để kiểm tra xem ngăn xếp có phần tử hay không, hãy sử dụng phương thức C # Contains (). Sau đây là mã -
Ví dụ
using System; using System.Collections.Generic; public class Demo { public static void Main() { Stack<int> stack = new Stack<int>(); stack.Push(100); stack.Push(150); stack.Push(175); stack.Push(200); stack.Push(225); stack.Push(250); stack.Push(300); stack.Push(400); stack.Push(450); stack.Push(500); Console.WriteLine("Elements in the Stack:"); foreach(var val in stack) { Console.WriteLine(val); } Console.WriteLine("Count of elements in the Stack = "+stack.Count); Console.WriteLine("Does Stack has the element 400?= "+stack.Contains(400)); } }
Đầu ra
Điều này sẽ tạo ra kết quả sau -
Elements in the Stack: 500 450 400 300 250 225 200 175 150 100 Count of elements in the Stack = 10 Does Stack has the element40400?= False