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

C# में BitArray की शैलो कॉपी (Clone) बनाना

BitArray.Clone() मेथड वर्तमान BitArray की एक शैलो कॉपी बनाता है। नया BitArray समान लंबाई और बिट मानों वाला होता है, लेकिन एक अलग ऑब्जेक्ट होता है।

उदाहरण 1: आंशिक रूप से भरे BitArray की क्लोनिंग

using System;
using System.Collections;

public class Demo {
    public static void Main() {
        BitArray arr1 = new BitArray(5);
        arr1[0] = false;
        arr1[1] = true;

        Console.WriteLine("BitArray1 लंबाई = " + arr1.Length);
        Console.WriteLine("BitArray1 पहला तत्व = " + arr1.Get(0));
        Console.WriteLine("BitArray1 दूसरा तत्व = " + arr1.Get(1));

        // शैलो कॉपी बनाएं
        BitArray arr2 = (BitArray)arr1.Clone();

        Console.WriteLine("\nBitArray2 लंबाई = " + arr2.Length);
        Console.WriteLine("BitArray2 पहला तत्व = " + arr2.Get(0));
        Console.WriteLine("BitArray2 दूसरा तत्व = " + arr2.Get(1));
    }
}

आउटपुट

BitArray1 लंबाई = 5
BitArray1 पहला तत्व = False
BitArray1 दूसरा तत्व = True

BitArray2 लंबाई = 5
BitArray2 पहला तत्व = False
BitArray2 दूसरा तत्व = True

उदाहरण 2: पूर्ण BitArray की क्लोनिंग और इटरेशन

using System;
using System.Collections;

public class Demo {
    public static void Main() {
        BitArray arr1 = new BitArray(5);
        arr1[0] = false;
        arr1[1] = true;
        arr1[2] = false;
        arr1[3] = true;
        arr1[4] = true; // नोट: इंडेक्स 3 दो बार सेट किया गया, अंतिम मान प्रभावी

        Console.WriteLine("BitArray1 लंबाई = " + arr1.Length);
        Console.WriteLine("BitArray1 में तत्व...");
        foreach (object obj in arr1) {
            Console.WriteLine(obj);
        }

        BitArray arr2 = (BitArray)arr1.Clone();

        Console.WriteLine("\nBitArray2 लंबाई = " + arr2.Length);
        Console.WriteLine("BitArray2 में तत्व...");
        foreach (object obj in arr2) {
            Console.WriteLine(obj);
        }
    }
}

आउटपुट

BitArray1 लंबाई = 5
BitArray1 में तत्व...
False
True
False
True
True

BitArray2 लंबाई = 5
BitArray2 में तत्व...
False
True
False
True
True

महत्वपूर्ण बिंदु

  • शैलो कॉपी: बिट्स वैल्यू टाइप (बूल) हैं, इसलिए शैलो कॉपी = डीप कॉपी।
  • स्वतंत्र ऑब्जेक्ट्स: क्लोन के बाद, एक को बदलने से दूसरा प्रभावित नहीं होता।
  • कास्टिंग आवश्यक: Clone() object लौटाता है, BitArray में कास्ट करें।
  • लंबाई संरक्षित: क्लोन की लंबाई मूल के समान होती है।
  • ICloneable: BitArray ICloneable इंटरफेस इम्प्लीमेंट करता है।

शैलो बनाम डीप कॉपी

चूंकि BitArray प्रिमिटिव bool मान स्टोर करता है (रेफरेंस टाइप नहीं), शैलो कॉपी प्रभावी रूप से एक डीप कॉपी होती है। प्रत्येक बिट स्वतंत्र रूप से कॉपी होता है।

  1. Photoshop में परफेक्ट GIF कैसे बनाएं Photoshop में परफेक्ट GIF कैसे बनाएं

    आपके PC पर GIF बनाने के बहुत सारे त्वरित और गंदे तरीके हैं, मुख्य रूप से उस उद्देश्य के लिए डिज़ाइन किए गए छोटे समर्पित ऐप्स का उपयोग करके। लेकिन अगर एक फ्रीवेयर ऐप यह कर सकता है, तो Photoshop शायद इसे बेहतर कर सकता है, और यदि आपके कंप्यूटर पर पहले से ही Photoshop है, तो GIF बनाने के लिए आपको कुछ और

  1. विंडोज 10 में क्लिपबोर्ड क्लियर करने का शॉर्टकट बनाएं: क्विक और आसान गाइड विंडोज 10 में क्लिपबोर्ड क्लियर करने का शॉर्टकट बनाएं: क्विक और आसान गाइड

    क्लिपबोर्ड एक टेम्पररी स्टोरेज एरिया है जो ऐप्लिकेशन्स के बीच डेटा ट्रांसफर करने में मदद करता है। जब आप कहीं से कुछ कॉपी करके दूसरी जगह पेस्ट करने का सोचते हैं, तो क्लिपबोर्ड उस कॉपी की गई जानकारी को स्टोर करता है। आप टेक्स्ट, इमेज, फाइल्स, फोल्डर्स, वीडियो, म्यूजिक आदि कुछ भी क्लिपबोर्ड में कॉपी कर

  1. विंडोज 11 इवैल्यूएशन वॉटरमार्क को स्थायी रूप से कैसे हटाएं – चरण-दर-चरण गाइड विंडोज 11 इवैल्यूएशन वॉटरमार्क को स्थायी रूप से कैसे हटाएं – चरण-दर-चरण गाइड

    खैर, विंडोज 11 सहित माइक्रोसॉफ्ट उत्पादों को नियमित विंडोज अपडेट प्राप्त करने और पूर्ण सुविधाओं का आनंद लेने के लिए उत्पाद को सक्रिय करने के लिए एक वैध प्रोडक्ट की या डिजिटल लाइसेंस की आवश्यकता होती है। इसका मतलब है कि यदि आपने विंडोज 11 ISO डाउनलोड किया है और इसे अपने कंप्यूटर पर इंस्टॉल किया है, त