C# | Convert Stack to array

Stack represents a last-in, first out collection of object. It is used when you need a last-in, first-out access of items. When you add an item in the list, it is called pushing the item and when you remove it, it is called popping the item. Stack<T>.ToArray Method is used to copy a Stack<T> to a new array.

Properties:

  • The capacity of a Stack is the number of elements the Stack can hold. As elements are added to a Stack, the capacity is automatically increased as required through reallocation.
  • If Count is less than the capacity of the stack, Push is an O(1) operation. If the capacity needs to be increased to accommodate the new element, Push becomes an O(n) operation, where n is Count. Pop is an O(1) operation.
  • Stack accepts null as a valid value and allows duplicate elements.

Syntax:



public T[] ToArray ();

Return Type: This method returns a new array t[] which contains the copy of the elements of the Stack<T>.

Below given are some examples to understand the implementation in a better way :

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to Convert Stack to array
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Stack of strings
        Stack<string> myStack = new Stack<string>();
  
        // Inserting the elements into the Stack
        myStack.Push("Geeks");
        myStack.Push("Geeks Classes");
        myStack.Push("Noida");
        myStack.Push("Data Structures");
        myStack.Push("GeeksforGeeks");
  
        // Converting the Stack into array
        String[] arr = myStack.ToArray();
  
        // Displaying the elements in array
        foreach(string str in arr)
        {
            Console.WriteLine(str);
        }
    }
}

chevron_right


Output:

GeeksforGeeks
Data Structures
Noida
Geeks Classes
Geeks

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to Convert Stack to array
using System;
using System.Collections.Generic;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Stack of Integers
        Stack<int> myStack = new Stack<int>();
  
        // Inserting the elements into the Stack
        myStack.Push(2);
        myStack.Push(3);
        myStack.Push(4);
        myStack.Push(5);
        myStack.Push(6);
  
        // Converting the Stack into array
        int[] arr = myStack.ToArray();
  
        // Displaying the elements in array
        foreach(int i in arr)
        {
            Console.WriteLine(i);
        }
    }
}

chevron_right


Output:

6
5
4
3
2

Reference:



My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.