কম্পিউটার টিউটোরিয়াল

C#-এ দুটি OrderedDictionary অবজেক্ট সমান কিনা চেক করা

C#-এ OrderedDictionary ক্লাসের Equals(object obj) মেথড ব্যবহার করে দুটি অবজেক্ট সমান কিনা চেক করা যায়। SortedList-এর মতোই, এটি রেফারেন্স সমতা (reference equality) চেক করে, কন্টেন্ট সমতা নয়। একই কন্টেন্ট থাকলেও ভিন্ন ইনস্ট্যান্স হলে false রিটার্ন করবে।

উদাহরণ ১: ভিন্ন কন্টেন্টের OrderedDictionary

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
    public static void Main() {
        OrderedDictionary dict1 = new OrderedDictionary();
        dict1.Add("A", "Books");
        dict1.Add("B", "Electronics");
        dict1.Add("C", "Smart Wearables");
        dict1.Add("D", "Pet Supplies");
        dict1.Add("E", "Clothing");
        dict1.Add("F", "Footwear");

        Console.WriteLine("OrderedDictionary1 উপাদান...");
        foreach (DictionaryEntry d in dict1) {
            Console.WriteLine(d.Key + " " + d.Value);
        }

        OrderedDictionary dict2 = new OrderedDictionary();
        dict2.Add("1", "One");
        dict2.Add("2", "Two");
        dict2.Add("3", "Three");
        dict2.Add("4", "Four");
        dict2.Add("5", "Five");
        dict2.Add("6", "Six");

        Console.WriteLine("\nOrderedDictionary2 উপাদান...");
        foreach (DictionaryEntry d in dict2) {
            Console.WriteLine(d.Key + " " + d.Value);
        }

        Console.WriteLine("\nOrderedDictionary1 কি OrderedDictionary2-এর সমান? = " + (dict1.Equals(dict2)));
    }
}

আউটপুট

OrderedDictionary1 উপাদান...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
OrderedDictionary2 উপাদান...
1 One
2 Two
3 Three
4 Four
5 Five
6 Six
OrderedDictionary1 কি OrderedDictionary2-এর সমান? = False

উদাহরণ ২: একই রেফারেন্স শেয়ার করা

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
    public static void Main() {
        OrderedDictionary dict1 = new OrderedDictionary();
        dict1.Add("A", "Books");
        dict1.Add("B", "Electronics");
        dict1.Add("C", "Smart Wearables");
        dict1.Add("D", "Pet Supplies");
        dict1.Add("E", "Clothing");
        dict1.Add("F", "Footwear");

        Console.WriteLine("OrderedDictionary1 উপাদান...");
        foreach (DictionaryEntry d in dict1) {
            Console.WriteLine(d.Key + " " + d.Value);
        }

        OrderedDictionary dict2 = new OrderedDictionary();
        dict2.Add("1", "One");
        dict2.Add("2", "Two");
        dict2.Add("3", "Three");
        dict2.Add("4", "Four");
        dict2.Add("5", "Five");
        dict2.Add("6", "Six");

        Console.WriteLine("\nOrderedDictionary2 উপাদান...");
        foreach (DictionaryEntry d in dict2) {
            Console.WriteLine(d.Key + " " + d.Value);
        }

        // dict3 = dict2 (সেম রেফারেন্স)
        OrderedDictionary dict3 = new OrderedDictionary();
        dict3 = dict2;
        Console.WriteLine("\nOrderedDictionary3 কি OrderedDictionary2-এর সমান? = " + (dict3.Equals(dict2)));
    }
}

আউটপুট

OrderedDictionary1 উপাদান...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
OrderedDictionary2 উপাদান...
1 One
2 Two
3 Three
4 Four
5 Five
6 Six
OrderedDictionary3 কি OrderedDictionary2-এর সমান? = True

ব্যাখ্যা: OrderedDictionary.Equals(obj) ডিফল্ট অবজেক্ট রেফারেন্স সমতা চেক করে। কন্টেন্ট সমতা চেক করতে হলে ম্যানুয়ালি প্রতিটি কী-ভ্যালু জোড়া তুলনা করতে হবে। OrderedDictionary লিগ্যাসি নন-জেনেরিক ক্লাস; নতুন কোডে Dictionary<TKey, TValue> বা SortedDictionary<TKey, TValue> ব্যবহার করা ভালো, যদিও সেগুলো ইনসারশন অর্ডার বজায় রাখে না (সেটা চাইলে List<KeyValuePair<TKey, TValue>> ব্যবহার করুন)।

  1. সি শার্প প্রোগ্রাম: দুটি সিকোয়েন্স একই কিনা তা যাচাই করা

  2. C#-এ দুটি ম্যাট্রিক্স ইডেন্টিক্যাল কিনা চেক করা

  3. পাইথন প্যান্ডাস - দুটি Index অবজেক্ট সমান কিনা তা নির্ধারণ করুন

  4. পাইথন প্যান্ডাস: দুটি ডেটাফ্রেম অবজেক্ট সমান কিনা যাচাই করা