C# में दो StringCollection ऑब्जेक्ट की समानता जांचने के लिए Equals(object) विधि का उपयोग किया जाता है। यह विधि संदर्भ समानता जांचती है, अर्थात दोनों वेरिएबल एक ही ऑब्जेक्ट इंस्टेंस को संदर्भित करते हैं या नहीं। सामग्री समानता के लिए कस्टम तुलना तर्क लागू करना पड़ता है।
उदाहरण 1: समान सामग्री वाले दो अलग संग्रह
using System;
using System.Collections.Specialized;
public class Demo {
public static void Main() {
StringCollection strCol1 = new StringCollection();
strCol1.Add("Accessories");
strCol1.Add("Books");
strCol1.Add("Electronics");
Console.WriteLine("StringCollection1 तत्व...");
foreach (string res in strCol1) {
Console.WriteLine(res);
}
StringCollection strCol2 = new StringCollection();
strCol2.Add("Accessories");
strCol2.Add("Books");
strCol2.Add("Electronics");
Console.WriteLine("StringCollection2 तत्व...");
foreach (string res in strCol2) {
Console.WriteLine(res);
}
Console.WriteLine("क्या दोनों स्ट्रिंग संग्रह समान हैं? = " + strCol1.Equals(strCol2));
}
}
आउटपुट
StringCollection1 तत्व... Accessories Books Electronics StringCollection2 तत्व... Accessories Books Electronics क्या दोनों स्ट्रिंग संग्रह समान हैं? = False
उदाहरण 2: संदर्भ समानता जांचना
using System;
using System.Collections.Specialized;
public class Demo {
public static void Main() {
StringCollection strCol1 = new StringCollection();
strCol1.Add("Accessories");
strCol1.Add("Books");
strCol1.Add("Electronics");
Console.WriteLine("StringCollection1 तत्व...");
foreach (string res in strCol1) {
Console.WriteLine(res);
}
StringCollection strCol2 = new StringCollection();
strCol2.Add("Accessories");
strCol2.Add("Books");
strCol2.Add("Electronics");
Console.WriteLine("StringCollection2 तत्व...");
foreach (string res in strCol2) {
Console.WriteLine(res);
}
Console.WriteLine("क्या दोनों स्ट्रिंग संग्रह समान हैं? = " + strCol1.Equals(strCol2));
StringCollection strCol3 = new StringCollection();
strCol3 = strCol2;
Console.WriteLine("क्या StringCollection3, StringCollection2 के बराबर है? = " + strCol3.Equals(strCol2));
}
}
आउटपुट
StringCollection1 तत्व... Accessories Books Electronics StringCollection2 तत्व... Accessories Books Electronics क्या दोनों स्ट्रिंग संग्रह समान हैं? = False क्या StringCollection3, StringCollection2 के बराबर है? = True
मुख्य बिंदु
Equals()डिफ़ॉल्ट रूप से संदर्भ समानता जांचता है- समान सामग्री और क्रम वाले दो अलग ऑब्जेक्ट
falseलौटाएंगे StringCollectionकेवल स्ट्रिंग्स संग्रहीत करता है- सामग्री समानता के लिए
SequenceEqual()(LINQ) या मैन्युअल तुलना करें - आधुनिक कोड में
List<string>का उपयोग करने की अनुशंसा की जाती है