Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

คลาส StringDictionary ใน C #?


คลาส StringDictionay ใช้ตารางแฮชที่มีคีย์และค่าที่พิมพ์อย่างแน่นหนาให้เป็นสตริงแทนที่จะเป็นอ็อบเจ็กต์

ต่อไปนี้เป็นคุณสมบัติของคลาส StringDictionary -

ซีเนียร์ คุณสมบัติ &คำอธิบาย
1 นับ
รับจำนวนคู่คีย์/ค่าใน StringDictionary
2 ซิงโครไนซ์
รับค่าที่ระบุว่าการเข้าถึง StringDictionary มีการซิงโครไนซ์หรือไม่ (ความปลอดภัยของเธรด)
3 tem[สตริง]
รับหรือตั้งค่าที่เกี่ยวข้องกับคีย์ที่ระบุ
4 กุญแจ
รับชุดของคีย์ใน StringDictionary..
5 SyncRoot
รับอ็อบเจ็กต์ที่สามารถใช้เพื่อซิงโครไนซ์การเข้าถึง StringDictionary
6 ค่า
รับค่าคอลเลกชันใน StringDictionary

ต่อไปนี้เป็นวิธีการบางอย่างของคลาส StringDictionary -

ซีเนียร์ วิธีการ &คำอธิบาย
1 เพิ่ม (สตริง สตริง)
เพิ่มรายการด้วยคีย์และค่าที่ระบุลงใน StringDictionary
2 ล้าง()
ลบรายการทั้งหมดออกจาก StringDictionary
3 ContainsKey(สตริง)
กำหนดว่า StringDictionary มีเฉพาะหรือไม่
4 ContainsValue(สตริง)
กำหนดว่า StringDictionary มีค่าเฉพาะหรือไม่
5 CopyTo(Array, Int32)
คัดลอกค่าพจนานุกรมสตริงไปยังอินสแตนซ์ Array แบบหนึ่งมิติที่ดัชนีที่ระบุ
6 เท่ากับ (วัตถุ)
กำหนดว่าวัตถุที่ระบุเท่ากับวัตถุปัจจุบันหรือไม่ (สืบทอดจากวัตถุ)

ตัวอย่าง

เรามาดูตัวอย่างกัน −

เพื่อตรวจสอบว่าสองวัตถุ StringDictionary เท่ากันหรือไม่ รหัสจะเป็นดังนี้ -

using System;
using System.Collections.Specialized;
public class Demo {
   public static void Main() {
      StringDictionary strDict1 = new StringDictionary();
      strDict1.Add("A", "John");
      strDict1.Add("B", "Andy");
      strDict1.Add("C", "Tim");
      strDict1.Add("D", "Ryan");
      strDict1.Add("E", "Kevin");
      strDict1.Add("F", "Katie");
      strDict1.Add("G", "Brad");
      StringDictionary strDict2 = new StringDictionary();
      strDict2.Add("A", "John");
      strDict2.Add("B", "Andy");
      strDict2.Add("C", "Tim");
      strDict2.Add("D", "Ryan");
      strDict2.Add("E", "Kevin");
      strDict2.Add("F", "Katie");
      strDict2.Add("G", "Brad");
      StringDictionary strDict3 = new StringDictionary();
      strDict3 = strDict2;
      Console.WriteLine("Is Dictionary2 equal to Dictionary3? = "+strDict2.Equals(strDict3));
      Console.WriteLine("Is Dictionary1 equal to Dictionary3? = "+strDict1.Equals(strDict3));
   }
}

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

Is Dictionary2 equal to Dictionary3? = True
Is Dictionary1 equal to Dictionary3? = False

ตัวอย่าง

เพื่อตรวจสอบว่า StringDictionary ซิงโครไนซ์หรือไม่ รหัสจะเป็นดังนี้ -

using System;
using System.Collections;
using System.Collections.Specialized;
public class Demo {
   public static void Main() {
      StringDictionary strDict1 = new StringDictionary();
      strDict1.Add("A", "John");
      strDict1.Add("B", "Andy");
      strDict1.Add("C", "Tim");
      strDict1.Add("D", "Ryan");
      strDict1.Add("E", "Kevin");
      strDict1.Add("F", "Katie");
      strDict1.Add("G", "Brad");
      Console.WriteLine("StringDictionary1 elements...");
      foreach(DictionaryEntry de in strDict1) {
         Console.WriteLine(de.Key + " " + de.Value);
      }
      StringDictionary strDict2 = new StringDictionary();
      strDict2.Add("1", "A");
      strDict2.Add("2", "B");
      strDict2.Add("3", "C");
      strDict2.Add("4", "D");
      strDict2.Add("5", "E");
      Console.WriteLine("\nStringDictionary2 key-value pairs...");
      IEnumerator demoEnum = strDict2.GetEnumerator();
      DictionaryEntry d;
      while (demoEnum.MoveNext()) {
         d = (DictionaryEntry)demoEnum.Current;
         Console.WriteLine("Key = " + d.Key + ", Value = " + d.Value);
      }
      Console.WriteLine("Is the StringDictionary2 synchronized? = "+strDict2.IsSynchronized);
   }
}

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

StringDictionary1 elements...
a John
b Andy
c Tim
d Ryan
e Kevin
f Katie
g Brad
StringDictionary2 key-value pairs...
Key = 1, Value = A
Key = 2, Value = B
Key = 3, Value = C
Key = 4, Value = D
Key = 5, Value = E
Is the StringDictionary2 synchronized? = False