📜  c# 字典循环键值 - C# (1)

📅  最后修改于: 2023-12-03 14:59:42.109000             🧑  作者: Mango

C# 字典循环键值 - C#

字典(Dictionary)是一种非常有用的数据结构,可以将键和值进行关联。C#中提供了 Dictionary<TKey,TValue> 泛型类,其中 TKey 是键的类型,而 TValue 是值的类型。字典中的键和值可以是任意类型。在 C# 中,可以使用 for 循环或 foreach 循环遍历字典的键值。

1. 基本语法
Dictionary<TKey, TValue> dict = new Dictionary<TKey, TValue>();

foreach(KeyValuePair<TKey, TValue> kvp in dict)
{
    // ...逐一处理 kvp.Key 和 kvp.Value ...
}

for(int i=0;i<dict.Count;i++)
{
    TKey key = dict.Keys.ElementAt(i);
    TValue value = dict[key];
    // ...处理 key 和 value ...
}
2. 使用 foreach 循环遍历字典键值

使用 foreach 循环可以遍历字典的键值,语法格式如下:

foreach(KeyValuePair<TKey, TValue> kvp in dict)
{
    // ...逐一处理 kvp.Key 和 kvp.Value ...
}

其中,KeyValuePair<TKey, TValue> 表示键值对类型,dict 表示要遍历的字典。 foreach 循环会逐一遍历字典中的键值对,将每一对键值对都赋值给 kvp 变量。在循环体内可以通过 kvp.Key 和 kvp.Value 分别获取当前键值对的键和值。下面是一个示例程序:

using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        Dictionary<string, int> dict = new Dictionary<string, int>();
        dict.Add("apple", 100);
        dict.Add("banana", 200);
        dict.Add("cherry", 300);

        foreach (KeyValuePair<string, int> kvp in dict)
        {
            Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
        }
    }
}

输出结果:

Key = apple, Value = 100
Key = banana, Value = 200
Key = cherry, Value = 300
3. 使用 for 循环遍历字典键值

使用 for 循环可以按顺序获取字典中的键值,语法格式如下:

for(int i=0;i<dict.Count;i++)
{
    TKey key = dict.Keys.ElementAt(i);
    TValue value = dict[key];
    // ...处理 key 和 value ...
}

其中,dict_Count 表示字典中的键值对数量,dict.Keys.ElementAt(i) 获取键的集合中第 i 个元素,dict[key] 获取指定键的值。在循环体内可以通过 key 和 value 变量分别获取当前键值对的键和值。下面是一个示例程序:

using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        Dictionary<string, int> dict = new Dictionary<string, int>();
        dict.Add("apple", 100);
        dict.Add("banana", 200);
        dict.Add("cherry", 300);

        for (int i = 0; i < dict.Count; i++)
        {
            string key = dict.Keys.ElementAt(i);
            int value = dict[key];
            Console.WriteLine("Key = {0}, Value = {1}", key, value);
        }
    }
}

输出结果:

Key = apple, Value = 100
Key = banana, Value = 200
Key = cherry, Value = 300
4. 总结

C# 中的 Dictionary<TKey, TValue> 泛型类提供了一种方便的方法来存储和查找关联的键和值。使用 foreach 循环或 for 循环遍历字典的键值对可以方便地进行处理。在编写程序时,可以根据不同的需求选择适合的遍历方式。