Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में Stack.CopyTo() मेथड - स्टैक को ऐरे में कॉपी करें

परिचय

C# में Stack.CopyTo() मेथड Stack के तत्वों को मौजूदा एक-आयामी ऐरे में कॉपी करता है, निर्दिष्ट ऐरे सूचकांक से शुरू करके। तत्व LIFO क्रम (ऊपर से नीचे) में कॉपी किए जाते हैं।

सिंटैक्स

public virtual void CopyTo(Array array, int index);

array गंतव्य एक-आयामी ऐरे है, और index वह सूचकांक है जहां कॉपी शुरू होती है।

उदाहरण 1: इंटीजर स्टैक के साथ क्लोन और कॉपी

using System;
using System.Collections;

public class Demo {
    public static void Main() {
        Stack stack = new Stack();
        stack.Push(150);
        stack.Push(300);
        stack.Push(500);
        stack.Push(750);
        stack.Push(1000);
        stack.Push(1250);
        stack.Push(1500);
        stack.Push(2000);
        stack.Push(2500);

        Console.WriteLine("स्टैक तत्व...");
        foreach (int val in stack) {
            Console.WriteLine(val);
        }

        Console.WriteLine("तत्वों की संख्या = " + stack.Count);
        Console.WriteLine("क्या 750 स्टैक में है? = " + stack.Contains(750));

        stack.Push(3000);
        Console.WriteLine("\nस्टैक तत्व...अपडेटेड");
        foreach (int val in stack) {
            Console.WriteLine(val);
        }

        Console.WriteLine("तत्वों की संख्या (अपडेटेड) = " + stack.Count);
        Console.WriteLine("क्या 5000 स्टैक में है? = " + stack.Contains(5000));

        Stack stack2 = (Stack)stack.Clone();
        Console.WriteLine("\nस्टैक तत्व...क्लोन");
        foreach (int val in stack2) {
            Console.WriteLine(val);
        }

        Console.WriteLine("क्लोन स्टैक में तत्वों की संख्या (अपडेटेड) = " + stack2.Count);

        Console.WriteLine("\nक्लोन स्टैक को इंटीजर ऐरे में कॉपी करना...");
        int[] intArr = new int[stack2.Count];
        stack2.CopyTo(intArr, 0);
        foreach (int j in intArr) {
            Console.WriteLine(j);
        }
    }
}

आउटपुट

स्टैक तत्व...
2500
2000
1500
1250
1000
750
500
300
150
तत्वों की संख्या = 9
क्या 750 स्टैक में है? = True

स्टैक तत्व...अपडेटेड
3000
2500
2000
1500
1250
1000
750
500
300
150
तत्वों की संख्या (अपडेटेड) = 10
क्या 5000 स्टैक में है? = False

स्टैक तत्व...क्लोन
3000
3500
3000
2500
2000
1500
1250
1000
750
500
300
150
क्लोन स्टैक में तत्वों की संख्या (अपडेटेड) = 12

क्लोन स्टैक को इंटीजर ऐरे में कॉपी करना...
3000
2500
2000
1500
1250
1000
750
500
300
150

उदाहरण 2: स्ट्रिंग स्टैक

using System;
using System.Collections;

public class Demo {
    public static void Main() {
        Stack stack = new Stack();
        stack.Push("Projectors");
        stack.Push("Monitors");
        stack.Push("XPS");
        stack.Push("Laptop");
        stack.Push("Notebook");

        Console.WriteLine("स्टैक तत्व...");
        foreach (string val in stack) {
            Console.WriteLine(val);
        }

        Console.WriteLine("तत्वों की संख्या = " + stack.Count);
        Console.WriteLine("क्या XPS स्टैक में है? = " + stack.Contains("XPS"));

        stack.Push("Ultrabook");
        Console.WriteLine("\nस्टैक तत्व...अपडेटेड");
        foreach (string val in stack) {
            Console.WriteLine(val);
        }

        Console.WriteLine("तत्वों की संख्या (अपडेटेड) = " + stack.Count);
        Console.WriteLine("क्या Ultrabook स्टैक में है? = " + stack.Contains("Ultrabook"));

        Stack stack2 = (Stack)stack.Clone();
        Console.WriteLine("\nस्टैक तत्व...क्लोन");
        foreach (string val in stack2) {
            Console.WriteLine(val);
        }

        Console.WriteLine("तत्वों की संख्या (अपडेटेड) = " + stack2.Count);

        Console.WriteLine("\nक्लोन स्टैक को स्ट्रिंग ऐरे में कॉपी करना...");
        string[] strArr = new string[stack2.Count];
        stack2.CopyTo(strArr, 0);
        foreach (string j in strArr) {
            Console.WriteLine(j);
        }
    }
}

आउटपुट

स्टैक तत्व...
Notebook
Laptop
XPS
Monitors
Projectors
तत्वों की संख्या = 5
क्या XPS स्टैक में है? = True

स्टैक तत्व...अपडेटेड
Ultrabook
Notebook
Laptop
XPS
Monitors
Projectors
तत्वों की संख्या (अपडेटेड) = 6
क्या Ultrabook स्टैक में है? = True

स्टैक तत्व...क्लोन
Ultrabook
Notebook
Laptop
XPS
Monitors
Projectors
तत्वों की संख्या (अपडेटेड) = 6

क्लोन स्टैक को स्ट्रिंग ऐरे में कॉपी करना...
Ultrabook
Notebook
Laptop
XPS
Monitors
Projectors

मुख्य बिंदु

  • तत्व LIFO क्रम में कॉपी किए जाते हैं (स्टैक के शीर्ष से शुरू)।
  • गंतव्य ऐरे में पर्याप्त स्थान होना चाहिए (index + Count <= array.Length)।
  • जेनेरिक Stack<T> के लिए CopyTo(T[], int) ओवरलोड उपलब्ध है।
  • मूल स्टैक अपरिवर्तित रहता है।
  1. C# में Console.SetBufferSize() मेथड C# में Console.SetBufferSize() मेथड

    C# में Console.SetBufferSize() मेथड का उपयोग स्क्रीन बफर क्षेत्र की ऊंचाई और चौड़ाई को निर्दिष्ट मानों पर सेट करने के लिए किया जाता है। सिंटैक्स सिंटैक्स निम्नलिखित है: public static void SetBufferSize (int width, int height); ऊपर, पैरामीटर width बफर क्षेत्र की चौड़ाई है, जबकि height बफर क्षेत्र की

  1. C# में Console.ResetColor() मेथड C# में Console.ResetColor() मेथड

    C# में Console.ResetColor() मेथड का उपयोग फोरग्राउंड और बैकग्राउंड कंसोल कलर्स को उनके डिफॉल्ट्स पर सेट करने के लिए किया जाता है। सिंटैक्स सिंटैक्स निम्नलिखित है: public static void ResetColor (); उदाहरण आइए अब C# में Console.ResetColor() मेथड को लागू करने का एक उदाहरण देखते हैं: using System; cla

  1. - C# में Console.Clear() मेथड - कंसोल स्क्रीन साफ़ करें

    C# में Console.Clear() मेथड कंसोल बफर और संबंधित कंसोल विंडो से प्रदर्शन जानकारी को साफ़ करने के लिए उपयोग किया जाता है। यह कर्सर को भी शीर्ष-बाएं कोने (पंक्ति 0, कॉलम 0) पर ले जाता है। सिंटैक्स public static void Clear (); उदाहरण: Console.Clear() का व्यावहारिक उपयोग यह उदाहरण दर्शाता है कि कैसे C