📜  c# iterate sortedDictionary - C# (1)

📅  最后修改于: 2023-12-03 15:29:45.805000             🧑  作者: Mango

C#用法之遍历排序字典

在C#中有一个名为SortedDictionary<TKey, TValue>的Built-in Class,用于存储按键排序的键/值对的集合,其键和值是可排序的。

要想按顺序遍历它,我们可以使用foreach循环或迭代器。

使用foreach循环遍历
SortedDictionary<string, int> dict = new SortedDictionary<string, int>();
dict.Add("apple", 10);
dict.Add("banana", 20);
dict.Add("cherry", 30);

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

输出:

Key = apple, Value = 10
Key = banana, Value = 20
Key = cherry, Value = 30
使用迭代器遍历
SortedDictionary<string, int> dict = new SortedDictionary<string, int>();
dict.Add("apple", 10);
dict.Add("banana", 20);
dict.Add("cherry", 30);

// 获取有序字典的枚举器
IEnumerator<KeyValuePair<string, int>> enumerator = dict.GetEnumerator();

// 迭代
while (enumerator.MoveNext())
{
    KeyValuePair<string, int> kvp = enumerator.Current;
    Console.WriteLine("Key = {0}, Value = {1}", kvp.Key, kvp.Value);
}

输出:

Key = apple, Value = 10
Key = banana, Value = 20
Key = cherry, Value = 30

迭代器与foreach循环的效果相同,不同之处在于它提供了更多的控制能力,例如重置迭代器、跳过一些元素等。

以上就是C#用法之遍历排序字典的介绍,希望对你有所帮助!