Home » C#.Net

Stack.CopyTo() method with example in C#

C# Stack.CopyTo() method: Here, we are going to learn about the CopyTo() method of Stack class in C#.
Submitted by IncludeHelp, on March 30, 2019

C# Stack.CopyTo() method

Stack.CopyTo() method is used to copy the stack elements/objects to an existing array from the given index.

Syntax:

    void Stack.CopyTo(Array, Int32);

Parameters: Array – Targeted array_name in which we have to copy the stack elements/objects, Int32 – is an index in targeted array_name from where stack elements/objects are copied.

Return value: void – it returns nothing.

Example:

    declare and initialize a stack:
    Stack stk = new Stack();
    
    an array declaration for 20 elements:
    int[] arr = new int[20];

    insertting elements:
    stk.Push(100);
    stk.Push(200);
    stk.Push(300);
    stk.Push(400);
    stk.Push(500);

    using CopyTo(), copying stack elements to the array:
    stk.CopyTo(arr, 3); //will copy from 3rd index in array
    
    Output:
    arr: 0 0 0 500 400 300 200 100 0 0 0 0 0 0 0 0 0 0 0 0

C# example to copy stack elements/objects to an array using Stack.CopyTo() method

using System;
using System.Text;
using System.Collections;

namespace Test
{
    class Program
    {
        //function to print stack elements
        static void printStack(Stack s)
        {
            foreach (Object obj in s)
            {
                Console.Write(obj + " ");
            }
            Console.WriteLine();
        }

        static void Main(string[] args)
        {
            //declare and initialize a stack
            Stack stk = new Stack();

            //an array declaration for 20 elements
            int[] arr = new int[20];
            

            //insertting elements
            stk.Push(100);
            stk.Push(200);
            stk.Push(300);
            stk.Push(400);
            stk.Push(500);

            //printing stack elements
            Console.WriteLine("Stack elements are...");
            printStack(stk);

            //printing array 
            Console.WriteLine("Array elements before CopyTo()...");
            foreach (int item in arr)
            {
                Console.Write(item + " ");
            }
            Console.WriteLine();

            //using CopyTo(), copying stack elements to the array
            stk.CopyTo(arr, 3);

            //printing array 
            Console.WriteLine("Array elements after CopyTo()...");
            foreach (int item in arr)
            {
                Console.Write(item + " ");
            }
            Console.WriteLine();            

            //hit ENTER to exit
            Console.ReadLine();
        }
    }
}

Output

Stack elements are...
500 400 300 200 100
Array elements before CopyTo()...
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Array elements after CopyTo()...
0 0 0 500 400 300 200 100 0 0 0 0 0 0 0 0 0 0 0 0

Reference: Stack.CopyTo(Array, Int32) Method



Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.