คลาส ListDictionary นำ IDictionary ไปใช้โดยใช้รายการที่เชื่อมโยงเพียงอย่างเดียว ขอแนะนำสำหรับคอลเล็กชันที่โดยทั่วไปมีน้อยกว่า 10 รายการ
ต่อไปนี้เป็นคุณสมบัติของคลาส ListDictionary -
Sr.No | คุณสมบัติ &คำอธิบาย |
---|---|
1 | นับ รับจำนวนคู่คีย์/ค่าที่มีอยู่ใน ListDictionary |
2 | IsFixedSize รับค่าที่ระบุว่า ListDictionary มีขนาดคงที่หรือไม่ |
3 | เป็นแบบอ่านอย่างเดียว รับค่าที่ระบุว่า ListDictionary เป็นแบบอ่านอย่างเดียวหรือไม่ |
4 | ซิงโครไนซ์ รับค่าที่ระบุว่า ListDictionary ซิงโครไนซ์หรือไม่ (เธรดที่ปลอดภัย) |
5 | รายการ[วัตถุ] รับหรือตั้งค่าที่เกี่ยวข้องกับที่ระบุ |
6 | กุญแจ รับ ICollection ที่มีคีย์ใน ListDictionary |
7 | SyncRoot รับอ็อบเจ็กต์ที่สามารถใช้เพื่อซิงโครไนซ์การเข้าถึง ListDictionary |
8 | ค่า รับ ICollection ที่มีค่าใน ListDictionary |
ต่อไปนี้คือวิธีการบางอย่างของคลาส ListDictionary -
ซีเนียร์ | วิธีการ &คำอธิบาย |
---|---|
1 | เพิ่ม (วัตถุ, วัตถุ) เพิ่มรายการที่มีคีย์และค่าที่ระบุลงใน ListDictionary |
2 | ล้าง() ลบรายการทั้งหมดออกจาก ListDictionary |
3 | ประกอบด้วย (วัตถุ) กำหนดว่า ListDictionary มีคีย์เฉพาะหรือไม่ |
4 | CopyTo(Array, Int32) คัดลอกรายการ ListDictionary ไปยังอินสแตนซ์ Array แบบหนึ่งมิติที่ดัชนีที่ระบุ |
5 | เท่ากับ (วัตถุ) กำหนดว่าวัตถุที่ระบุเท่ากับวัตถุปัจจุบันหรือไม่ (สืบทอดมาจากวัตถุ) |
6 | GetEnumerator() ส่งกลับ IDictionaryEnumerator ที่วนซ้ำผ่าน ListDictionary |
7 | GetHashCode() ทำหน้าที่เป็นฟังก์ชันแฮชเริ่มต้น (สืบทอดมาจากวัตถุ) |
8 | GetType() รับชนิดของอินสแตนซ์ปัจจุบัน (สืบทอดมาจากวัตถุ) |
ตัวอย่าง
เรามาดูตัวอย่างกัน −
เพื่อตรวจสอบว่า ListDictionary เป็นแบบอ่านอย่างเดียวหรือไม่ โค้ดจะเป็นดังนี้ -
using System; using System.Collections; using System.Collections.Specialized; public class Demo { public static void Main() { ListDictionary dict1 = new ListDictionary(); 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("ListDictionary1 elements..."); foreach(DictionaryEntry d in dict1) { Console.WriteLine(d.Key + " " + d.Value); } Console.WriteLine("Is the ListDictionary1 having fixed size? = "+dict1.IsFixedSize); Console.WriteLine("If ListDictionary1 read-only? = "+dict1.IsReadOnly); Console.WriteLine("Is ListDictionary1 synchronized = "+dict1.IsSynchronized); Console.WriteLine("The ListDictionary1 has the key M? = "+dict1.Contains("M")); ListDictionary dict2 = new ListDictionary(); 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("\nListDictionary2 key-value pairs..."); IDictionaryEnumerator demoEnum = dict2.GetEnumerator(); while (demoEnum.MoveNext()) Console.WriteLine("Key = " + demoEnum.Key + ", Value = "+ demoEnum.Value); Console.WriteLine("Is the ListDictionary2 having fixed size? = "+dict2.IsFixedSize); Console.WriteLine("If ListDictionary2 read-only? = "+dict2.IsReadOnly); Console.WriteLine("Is ListDictionary2 synchronized = "+dict2.IsSynchronized); Console.WriteLine("The ListDictionary2 has the key 5? = "+dict2.Contains("5")); } }
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
ListDictionary1 elements... A Books B Electronics C Smart Wearables D Pet Supplies E Clothing F Footwear Is the ListDictionary1 having fixed size? = False If ListDictionary1 read-only? = False Is ListDictionary1 synchronized = False The ListDictionary1 has the key M? = False ListDictionary2 key-value pairs... Key = 1, Value = One Key = 2, Value = Two Key = 3, Value = Three Key = 4, Value = Four Key = 5, Value = Five Key = 6, Value = Six Is the ListDictionary2 having fixed size? = False If ListDictionary2 read-only? = False Is ListDictionary2 synchronized = False The ListDictionary2 has the key 5? = True
เพื่อตรวจสอบว่าวัตถุ ListDictionary สองรายการเท่ากันหรือไม่ รหัสจะเป็นดังนี้ -
ตัวอย่าง
using System; using System.Collections; using System.Collections.Specialized; public class Demo { public static void Main() { ListDictionary dict1 = new ListDictionary(); 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("ListDictionary1 elements..."); foreach(DictionaryEntry d in dict1) { Console.WriteLine(d.Key + " " + d.Value); } ListDictionary dict2 = new ListDictionary(); 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("\nListDictionary2 elements..."); foreach(DictionaryEntry d in dict2) { Console.WriteLine(d.Key + " " + d.Value); } ListDictionary dict3 = new ListDictionary(); dict3 = dict2; Console.WriteLine("\nIs ListDictionary3 equal to ListDictionary2? = "+(dict3.Equals(dict2))); } }
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
ListDictionary1 elements... A Books B Electronics C Smart Wearables D Pet Supplies E Clothing F Footwear ListDictionary2 elements... 1 One 2 Two 3 Three 4 Four 5 Five 6 Six Is ListDictionary3 equal to ListDictionary2? = True