要使用Dictionary集合,需要導入C#泛型命名空間
System.Collections.Generic(程序集:mscorlib)
Dictionary的特性:
1、從壹組鍵(Key)到壹組值(Value)的映射,每壹個添加項都是由壹個值及其相關連的鍵組成
2、任何鍵都必須是唯壹的
3、鍵不能為空引用null(VB中的Nothing),若值為引用類型,則可以為空值
4、Key和Value可以是任何類型
例如,創建壹個鍵值都是字符串類型的字典
Dictionary<string, string> EmployeeList = new Dictionary<string, string>();
使用Add 方法添加元素
EmployeeList.Add("Mahesh Chand", "Programmer");
EmployeeList.Add("Praveen Kumar", "Project Manager");
EmployeeList.Add("Raj Kumar", "Architect");
EmployeeList.Add("Nipun Tomar", "Asst. Project Manager");
EmployeeList.Add("Dinesh Beniwal", "Manager");
類似可以創建其它類型的字典,通過Add方法添加元素。
Dictionary<string, int> AuthorList = new Dictionary<string, int>();
AuthorList.Add("Mahesh Chand", 35);
AuthorList.Add("Mike Gold", 25);
AuthorList.Add("Praveen Kumar", 29);
AuthorList.Add("Raj Beniwal", 21);
AuthorList.Add("Dinesh Beniwal", 84);
Dictionary<string, float> PriceList = new Dictionary<string, float>(3);
PriceList.Add("Tea", 3.25f);
PriceList.Add("Juice", 2.76f);
PriceList.Add("Milk", 1.15f);
使用KeyValuePair 檢索鍵和值
foreach (KeyValuePair<string,string> kv in EmployeeList)
{
?Console.WriteLine($"鍵:{kv.Key} -> 值: {kv.Value}");
?}
檢索鍵:
foreach (var k in EmployeeList.Keys)
{
Console.WriteLine(k);
?}
檢索值:
foreach (var v in EmployeeList.Values)
?{
? Console.WriteLine(v);
?}
Count, Keys and Values
Keys,Values 分別是鍵集合和值集合
Count屬性 元素(鍵值對)的個數
Console.WriteLine(EmployeeList.Count); 輸出值 5
//修改前
Console.WriteLine(EmployeeList["Mahesh Chand"]);
EmployeeList["Mahesh Chand"] = "ModfiyValue";
//修改後
Console.WriteLine(EmployeeList["Mahesh Chand"]);
字典名稱["鍵名"] = 要修改的值
add, remove, find(ContainsKey,ContainsValue)?
Add方法用於添加元素,上面已經演示過。
Remove 用於刪除元素
EmployeeList.Remove("Mahesh Chand");
查詢鍵是否存在,值是否存在字典中
if(EmployeeList.ContainsKey("Mahesh Chand"))
{
? Console.WriteLine("包含鍵 Mahesh Chand");
?}
if (!EmployeeList.ContainsValue("CEO")){
? Console.WriteLine("CEO NOT found");
}