परिचय
C# में String.Copy() मेथड निर्दिष्ट स्ट्रिंग के समान मान वाली एक नई स्ट्रिंग इंस्टेंस बनाता है। यह मूल स्ट्रिंग से स्वतंत्र एक नया ऑब्जेक्ट आवंटित करता है।
सिंटैक्स
public static string Copy(string str);
यहाँ str कॉपी की जाने वाली स्ट्रिंग है।
उदाहरण 1: अलग-अलग स्ट्रिंग्स कॉपी करना
using System;
public class Demo {
public static void Main(string[] args) {
string s1 = "Amy";
string s2 = "Katie";
string s3 = String.Copy(s2);
Console.WriteLine("String1 = " + s1);
Console.WriteLine("String2 = " + s2);
Console.WriteLine("क्या दोनों स्ट्रिंग्स समान हैं? = " + s1.Equals(s2));
Console.WriteLine("क्या दोनों स्ट्रिंग्स समान हैं? = " + s2.Equals(s3));
Console.WriteLine(string.CompareOrdinal(s1, s2));
Console.WriteLine(string.CompareOrdinal(s2, s3));
}
}
आउटपुट
String1 = Amy String2 = Katie क्या दोनों स्ट्रिंग्स समान हैं? = False क्या दोनों स्ट्रिंग्स समान हैं? = True -10 0
उदाहरण 2: समान स्ट्रिंग्स कॉपी करना और संशोधित करना
using System;
public class Demo {
public static void Main(string[] args) {
string s1 = "Gary";
string s2 = "Gary";
string s3 = String.Copy(s2);
Console.WriteLine("String1 = " + s1);
Console.WriteLine("String2 = " + s2);
Console.WriteLine("क्या s1 और s2 समान हैं? = " + s1.Equals(s2));
Console.WriteLine("क्या s2 और s3 समान हैं? = " + s2.Equals(s3));
// s3 को संशोधित करना - s2 प्रभावित नहीं होता
s3 = "Harry";
Console.WriteLine("क्या s2 और s3 समान हैं? = " + s2.Equals(s3));
}
}
आउटपुट
String1 = Gary String2 = Gary क्या s1 और s2 समान हैं? = True क्या s2 और s3 समान हैं? = True क्या s2 और s3 समान हैं? = False
मुख्य बिंदु
String.Copy()एक नया स्ट्रिंग ऑब्जेक्ट बनाता है जिसका मान समान होता है।- मूल और कॉपी की गई स्ट्रिंग स्वतंत्र होती हैं - एक को बदलने से दूसरी प्रभावित नहीं होती।
- स्ट्रिंग्स इम्यूटेबल (immutable) होती हैं, इसलिए "संशोधन" वास्तव में एक नई स्ट्रिंग बनाता है।
- आधुनिक C# में, सरल असाइनमेंट (
s3 = s2) अक्सर पर्याप्त होता है क्योंकि स्ट्रिंग्स इम्यूटेबल हैं।Copy()तब उपयोगी है जब आपको एक अलग ऑब्जेक्ट रेफरेंस की गारंटी चाहिए।