How to use C# Stack Class

The Stack class in C# represents a last-in-first-out (LIFO) collection of objects. It operates on the principle of push-pop operations, allowing items to be inserted (pushed) onto the stack and retrieved (popped) back in the reverse order of insertion. Stack is implemented using a circular buffer, ensuring efficient memory utilization.

The Stack data structure follows the Last In First Out (LIFO) system, meaning that the most recently added item is the first to be retrieved. As elements are added to a Stack, the capacity dynamically increases as necessary through automatic reallocation.

Commonly used methods :

  1. Push : Add (Push) an item in the Stack data structure
  2. Pop : Pop return the last Item from the Stack
  3. Contains: Check the object contains in the Stack

Push : Add (Push) an item in the Stack data structure

  1. Object : The item to be inserted.
Stack days = new Stack(); days.Push("Sunday");

Pop : Pop return the item last Item from the Stack

Object Stack.Pop()
  1. Object : Return the last object in the Stack

Contains : Check the object contains in the Stack

  1. Object : The specified Object to be search

The following CSharp Source code shows some of important functions in Stack Class:

Full Source C#
using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Stack days = new Stack(); days.Push("SunDay"); days.Push("MonDay"); days.Push("TueDay"); days.Push("WedDay"); days.Push("ThuDay"); days.Push("FriDay"); days.Push("SaturDay"); if (days.Count ==7) { MessageBox.Show(days.Pop().ToString ()); } else { MessageBox.Show("SaturDay does not exist"); } } } }

When you execute this C# program add seven items in the stack . Then it check the count is equal to 7 , if it is seven then pop() the item. The message box will display SaturDay.


The Stack class in C# offers a reliable and efficient solution for managing data in a last-in-first-out manner, providing flexibility and ease of use for a wide range of applications.