Open In App

Stack.CopyTo() Method in C#

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

This method(comes under System.Collections namespace) is used to copy the Stack to an existing 1-D Array which starts from the specified array index. The elements are copied onto the array in last-in-first-out (LIFO) order, similar to the order of the elements returned by a succession of calls to Pop. This method is an O(n) operation, where n is Count.

Syntax:

public void CopyTo (T[] array, int arrayIndex);

Parameters:

array: It is the one-dimensional Array that is the destination of the elements copied from Stack. The Array must have zero-based indexing.

arrayIndex: It is the zero-based index in array at which copying begins.

Exceptions:

  • ArgumentNullException : If an array is null.
  • ArgumentOutOfRangeException : If the index is less than zero.
  • ArgumentException : If the array is multidimensional or the number of elements in the source Stack is greater than the available space from index to the end of the destination array.
  • InvalidCastException : If the type of the source Stack cannot be cast automatically to the type of the destination array.

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

Example 1:




// C# code to illustrate the
// Stack.CopyTo() Method
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Stack
        Stack myStack = new Stack();
  
        // Inserting the elements into the Stack
        myStack.Push("Geeks");
        myStack.Push("Geeks Classes");
        myStack.Push("Noida");
        myStack.Push("Data Structures");
        myStack.Push("GeeksforGeeks");
  
        // Creating a string array arr
        string[] arr = new string[myStack.Count];
  
        // Copying the elements of
        // stack into array arr
        myStack.CopyTo(arr, 0);
  
        // Displaying the elements
        // in array arr
        foreach(string str in arr)
        {
            Console.WriteLine(str);
        }
    }
}


Output:

GeeksforGeeks
Data Structures
Noida
Geeks Classes
Geeks

Example 2:




// C# code to illustrate the
// Stack.CopyTo() Method
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a Stack
        Stack myStack = new Stack();
  
        // Inserting the elements
        // into the Stack
        myStack.Push(2);
        myStack.Push(3);
        myStack.Push(4);
        myStack.Push(5);
        myStack.Push(6);
  
        // Creating an Integer array arr
        int[] arr = new int[myStack.Count];
  
        // Copying the elements of 
        // stack into array arr
        myStack.CopyTo(arr, 0);
  
        // Displaying the elements
        // in array arr
        foreach(int i in arr)
        {
            Console.WriteLine(i);
        }
    }
}


Output:

6
5
4
3
2

Reference:



Last Updated : 04 Feb, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads