হাইব্রিডডিকশনারি ক্লাস আইডিকশনারি প্রয়োগ করে একটি ListDictionary ব্যবহার করে যখন সংগ্রহটি ছোট হয়, এবং তারপর সংগ্রহটি বড় হয়ে গেলে একটি হ্যাশটেবলে স্যুইচ করে।
হাইব্রিড ডিকশনারি ক্লাস -
এর বৈশিষ্ট্যগুলি নিম্নরূপ| Sr. No | সম্পত্তি এবং বর্ণনা |
|---|---|
| 1 | গণনা হাইব্রিড ডিকশনারিতে থাকা কী/মান জোড়ার সংখ্যা পায়। |
| 2 | IsFixedSize৷ হাইব্রিড অভিধানের একটি নির্দিষ্ট আকার আছে কিনা তা নির্দেশ করে একটি মান পায়। |
| 3 | ইজঅনলি হাইব্রিড ডিকশনারি শুধুমাত্র পঠনযোগ্য কিনা তা নির্দেশ করে একটি মান পায়। |
| 4 | সিঙ্ক্রোনাইজ করা হয়েছে৷ হাইব্রিড ডিকশনারি সিঙ্ক্রোনাইজ করা হয়েছে কিনা তা নির্দেশ করে একটি মান পায় (থ্রেড নিরাপদ)। |
| 5 | আইটেম[অবজেক্ট] নির্দিষ্ট কী এর সাথে যুক্ত মান পায় বা সেট করে। |
| 6 | কী হাইব্রিড ডিকশনারিতে কী সমন্বিত একটি IC Collection পায়। |
| 7 | SyncRoot হাইব্রিড ডিকশনারিতে অ্যাক্সেস সিঙ্ক্রোনাইজ করতে ব্যবহার করা যেতে পারে এমন একটি বস্তু পায়। |
| 8 | মানগুলি৷ হাইব্রিড ডিকশনারির মান সম্বলিত একটি IC Collection পায়। |
হাইব্রিড ডিকশনারি ক্লাস -
এর কিছু পদ্ধতি নিচে দেওয়া হল| Sr.No | পদ্ধতি এবং বর্ণনা |
|---|---|
| 1 | যোগ করুন(অবজেক্ট, অবজেক্ট) হাইব্রিড ডিকশনারিতে নির্দিষ্ট কী এবং মান সহ একটি এন্ট্রি যোগ করে। |
| 2 | ক্লিয়ার()৷ হাইব্রিড ডিকশনারি থেকে সমস্ত এন্ট্রি সরিয়ে দেয়। |
| 3 | ধারণ করে(বস্তু) হাইব্রিড ডিকশনারিতে একটি নির্দিষ্ট কী রয়েছে কিনা তা নির্ধারণ করে |
| 4 | CopyTo(Array, Int32)৷ হাইব্রিড ডিকশনারি এন্ট্রিগুলিকে নির্দিষ্ট সূচকে একটি একমাত্রিক অ্যারে উদাহরণে অনুলিপি করে। |
| 5 | সমান (বস্তু) নির্দিষ্ট বস্তুটি বর্তমান বস্তুর সমান কিনা তা নির্ধারণ করে। (অবজেক্ট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত) |
| 6 | GetEnumerator() একটি IDictionaryEnumerator প্রদান করে যা হাইব্রিড অভিধানের মাধ্যমে পুনরাবৃত্তি করে। |
| 7 | GetHashCode() ডিফল্ট হ্যাশ ফাংশন হিসাবে কাজ করে। (অবজেক্ট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত) |
| 8 | GetType() বর্তমান উদাহরণের ধরন পায়। (অবজেক্ট থেকে উত্তরাধিকারসূত্রে প্রাপ্ত) |
হাইব্রিড ডিকশনারিতে কী/মান জোড়ার সংখ্যা গণনা করতে, কোডটি নিম্নরূপ -
উদাহরণ
আসুন এখন কিছু উদাহরণ দেখি -
using System;
using System.Collections;
using System.Collections.Specialized;
public class Demo {
public static void Main() {
HybridDictionary dict1 = new HybridDictionary();
dict1.Add("A", "SUV");
dict1.Add("B", "MUV");
dict1.Add("C", "AUV");
Console.WriteLine("HybridDictionary1 elements...");
foreach(DictionaryEntry d in dict1) {
Console.WriteLine(d.Key + " " + d.Value);
}
Console.WriteLine("Count of Key/value pairs in Dictionary1 = "+dict1.Count);
HybridDictionary dict2 = new HybridDictionary();
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("\nHybridDictionary2 elements...");
foreach(DictionaryEntry d in dict2) {
Console.WriteLine(d.Key + " " + d.Value);
}
Console.WriteLine("Count of Key/value pairs in Dictionary2 = "+dict1.Count);
dict2.Clear();
Console.WriteLine("Count of Key/value pairs in Dictionary2 (Updated) = "+dict2.Count);
}
} আউটপুট
এটি নিম্নলিখিত আউটপুট −
তৈরি করবেHybridDictionary1 elements... A SUV B MUV C AUV Count of Key/value pairs in Dictionary1 = 3 HybridDictionary2 elements... 1 One 2 Two 3 Three 4 Four 5 Five 6 Six Count of Key/value pairs in Dictionary2 = 3 Count of Key/value pairs in Dictionary2 (Updated) = 0
HybridDictionary সিঙ্ক্রোনাইজ করা হয়েছে কিনা তা পরীক্ষা করতে, কোডটি নিম্নরূপ −
উদাহরণ
using System;
using System.Collections;
using System.Collections.Specialized;
public class Demo {
public static void Main() {
HybridDictionary dict1 = new HybridDictionary();
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("HybridDictionary1 elements...");
foreach(DictionaryEntry d in dict1) {
Console.WriteLine(d.Key + " " + d.Value);
}
Console.WriteLine("Is the HybridDictionary1 having fixed size? = "+dict1.IsFixedSize);
Console.WriteLine("If HybridDictionary1 read-only? = "+dict1.IsReadOnly);
Console.WriteLine("Is HybridDictionary1 synchronized = "+dict1.IsSynchronized);
HybridDictionary dict2 = new HybridDictionary();
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("\nHybridDictionary2 elements...");
foreach(DictionaryEntry d in dict2) {
Console.WriteLine(d.Key + " " + d.Value);
}
Console.WriteLine("Is HybridDictionary1 equal to HybridDictionary2? = "+(dict1.Equals(dict2)));
Console.WriteLine("Is the HybridDictionary2 having fixed size? = "+dict2.IsFixedSize);
Console.WriteLine("If HybridDictionary2 read-only? = "+dict2.IsReadOnly);
Console.WriteLine("Is HybridDictionary2 synchronized = "+dict2.IsSynchronized);
}
} আউটপুট
এটি নিম্নলিখিত আউটপুট −
তৈরি করবেHybridDictionary1 elements... A Books B Electronics C Smart Wearables D Pet Supplies E Clothing F Footwear Is the HybridDictionary1 having fixed size? = False If HybridDictionary1 read-only? = False Is HybridDictionary1 synchronized = False HybridDictionary2 elements... 1 One 2 Two 3 Three 4 Four 5 Five 6 Six Is HybridDictionary1 equal to HybridDictionary2? = False Is the HybridDictionary2 having fixed size? = False If HybridDictionary2 read-only? = False Is HybridDictionary2 synchronized = False