C# - Stack
Stack is a special type of collection that stores elements in LIFO style (Last In First Out). C# includes the generic Stack<T> and non-generic Stack collection classes. It is recommended to use the generic Stack<T> collection.
Stack is useful to store temporary data in LIFO style, and you might want to delete an element after retrieving its value.
Stack<T> Characteristics
Stack<T>is Last In First Out collection.- It comes under
System.Collection.Genericnamespace. Stack<T>can contain elements of the specified type. It provides compile-time type checking and doesn't perform boxing-unboxing because it is generic.- Elements can be added using the
Push()method. Cannot use collection-initializer syntax. - Elements can be retrieved using the
Pop()and thePeek()methods. It does not support an indexer.
Creating a Stack
You can create an object of the Stack<T> by specifying a type parameter for the type of elements it can store. The following example creates and adds elements in the Stack<T> using the Push() method. Stack allows null (for reference types) and duplicate values.
Example: Create and Add Elements in Stack
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
myStack.Push(4);
foreach (var item in myStack)
Console.Write(item + ","); //prints 4,3,2,1,
You can also create a Stack from an array, as shown below.
Example: Create and Add Elements in Stack
int[] arr = new int[]{ 1, 2, 3, 4};
Stack<int> myStack = new Stack<int>(arr);
foreach (var item in myStack)
Console.Write(item + ","); //prints 4,3,2,1,
Stack<T> Properties and Methods:
| Property | Usage |
|---|---|
| Count | Returns the total count of elements in the Stack. |
| Method | Usage |
|---|---|
| Push(T) | Inserts an item at the top of the stack. |
| Peek() | Returns the top item from the stack. |
| Pop() | Removes and returns items from the top of the stack. |
| Contains(T) | Checks whether an item exists in the stack or not. |
| Clear() | Removes all items from the stack. |
Comments
Post a Comment