C#中的Dictionary类表示为Dictionary
C#中Dictionary类的语法如下:
IDictionary<TKey, TValue> variable_name = new Dictionary<TKey, TValue>();
或
Dictionary<TKey, TValue > variable_name = new Dictionary<TKey, TValue >();
考虑下面的示例来解释如何使用 Dictionary 类来单独获取键:
using System; using System.Collections.Generic; //a class called program is defined class program { // main method is called public static void Main() { // a new dictionary is created with key type string and value type string Dictionary<string, string> Dict = new Dictionary<string, string>(); // using add method in dictionary to add the objects to the dictionary Dict.Add("A", "Karnataka"); Dict.Add("B", "Maharashtra"); Dict.Add("C", "Andra"); Dict.Add("D", "TamilNadu"); Dict.Add("E", "Delhi"); Dict.Add("F", "Goa"); // Finding the number of key value pairs in the dictionary Console.WriteLine("The number of key value pairs in the dictionary are : " + Dict.Count); // using the property of keys to get the keys alone from the dictionary Dictionary<string, string>.KeyCollection key = Dict.Keys; // a foreach loop is used to loop around every key in the dictionary and to obtain each key value foreach(string sh in key) { Console.WriteLine("The key is referred as = {0}", sh); } } }
上述程序的输出如下图所示:
上面的程序中,程序就是定义的类。然后调用main方法。使用键类型字符串和值类型字符串创建一个新字典。然后使用字典中的add方法将对象添加到字典中。然后使用计数找到字典中键值对的数量。然后利用键的属性,从字典中单独提取键。然后使用 foreach 循环来循环字典中的每个键并获取每个键值。程序的输出如上面的快照所示。
C#中的Dictionary类中有几个方法。他们是:
using System; using System.Collections.Generic; //a class called check is defined public class Check { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str.Add(3,"Green"); str.Add(1,"Saffron"); str.Add(2,"White"); str.Add(new KeyValuePair<int, string>(4, "Blue")); //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str.Count); } }
上述程序的输出如下图所示:
Remove() 方法用于从字典中删除第一次出现的指定项目。
remove() 方法用于从字典对象中删除与 key 一起指定的元素。
考虑下面的示例来演示 Dictionary 类中 Remove() 方法的用法:
using System; using System.Collections.Generic; //a class called check1 is defined public class Check1 { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str1 = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str1.Add(3,"Green"); str1.Add(1,"Saffron"); str1.Add(2,"White"); str1.Add(new KeyValuePair<int, string>(4, "Blue")); str1.Remove(1); str1.Remove(new KeyValuePair<int, string>(2, "White")); //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str1.Count); } }
上述程序的输出如下图所示:
ContainsKey() 方法用于检查给定的键是否存在于 Dictionary
考虑以下程序来演示 Dictionary 类中 ContainsKey() 方法的用法:
using System; using System.Collections.Generic; //a class called2 check is defined public class Check2 { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str2 = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str2.Add(3,"Green"); str2.Add(1,"Saffron"); str2.Add(2,"White"); str2.Add(new KeyValuePair<int, string>(4, "Blue")); str2.Remove(1); str2.Remove(new KeyValuePair<int, string>(2, "White")); Console.WriteLine("If the key 3 is present?{0}", str2.ContainsKey(3)); Console.WriteLine("If the key 2 is present? {0}", str2.Contains(new KeyValuePair<int, string>(2, "White"))); //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str2.Count); } }
上述程序的输出如下图所示:
ContainsValue() 方法用于检查给定值是否存在于 Dictionary
考虑以下程序来演示 Dictionary 类中 ContainsValue() 方法的用法:
using System; using System.Collections.Generic; //a class called check3 is defined public class Check3 { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str2 = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str2.Add(3,"Green"); str2.Add(1,"Saffron"); str2.Add(2,"White"); str2.Add(new KeyValuePair<int, string>(4, "Blue")); str2.Remove(1); str2.Remove(new KeyValuePair<int, string>(2, "White")); Console.WriteLine("If the key 3 is present?{0}", str2.ContainsKey(3)); Console.WriteLine("If the key 2 is present? {0}", str2.Contains(new KeyValuePair<int, string>(2, "White"))); //new dictionary of both string key and string value types is defined Dictionary<string, string> stri = new Dictionary<string, string>(); stri.Add("Flag","Green"); Console.WriteLine("If the value Green is present?{0}", stri.ContainsValue("Green")); //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str2.Count); } }
上述程序的输出如下图所示:
clear()方法用于清除字典类中的所有对象。
考虑以下程序来演示 Dictionary 类中 ContainsValue() 方法的用法:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; //a class called check4 is defined public class Check4 { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str3 = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str3.Add(3,"Green"); str3.Add(1,"Saffron"); str3.Add(2,"White"); str3.Add(new KeyValuePair<int, string>(4, "Blue")); str3.Remove(1); str3.Remove(new KeyValuePair<int, string>(2, "White")); Console.WriteLine("If the key 3 is present?{0}", str3.ContainsKey(3)); Console.WriteLine("If the key 2 is present? {0}", str3.Contains(new KeyValuePair<int, string>(2, "White"))); //new dictionary of both string key and string value types is defined Dictionary<string, string> stri1 = new Dictionary<string, string>(); stri1.Add("Flag","Green"); Console.WriteLine("If the value Green is present?{0}", stri1.ContainsValue("Green")); //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str3.Count); Console.Clear(); } }
上述程序的输出为空白,如下图所示:
TryGetValue() 方法检查给定的键是否存在,如果不存在则返回 false。如果给定的键存在,则返回 true 并将给定的值分配给指定的键。
Consider the below program to demonstrate the usage of TryGetValue() method of Dictionary class:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; //a class called check4 is defined public class Check4 { //main method is called public static void Main() { //a new dictionary is created with key type int and value type string IDictionary<int, string> str3 = new Dictionary<int, string>(); //Add method is used to add objects to the dictionary str3.Add(3,"Green"); str3.Add(1,"Saffron"); str3.Add(2,"White"); str3.Add(new KeyValuePair<int, string>(4, "Blue")); str3.Remove(1); str3.Remove(new KeyValuePair<int, string>(2, "White")); Console.WriteLine("If the key 3 is present?{0}", str3.ContainsKey(3)); Console.WriteLine("If the key 2 is present? {0}", str3.Contains(new KeyValuePair<int, string>(2, "White"))); //new dictionary of both string key and string value types is defined Dictionary<string, string> stri1 = new Dictionary<string, string>(); stri1.Add("Flag","Green"); Console.WriteLine("If the value Green is present?{0}", stri1.ContainsValue("Green")); string res; if(str3.TryGetValue(4, out res)) { Console.WriteLine("The value of the specified key is {0}", res); } else { Console.WriteLine("The specified key is not present."); } //The number of objects in the dictionary is displayed using count Console.WriteLine("The number of objects in the given dictionary is: {0} ", str3.Count); } }
The output of the above program is as shown in the snapshot below:
In this tutorial, we understand the concept of Dictionary class in C# through definition, the syntax of Dictionary class in C#, working of Dictionary class, and their methods through programming examples and their outputs.
以上是C# 字典的详细内容。更多信息请关注PHP中文网其他相关文章!