温馨提示×

C#字典遍历时如何排序

c#
小樊
161
2024-07-30 14:52:10
栏目: 编程语言

在C#中,字典(Dictionary)本身是无序的数据结构,但你可以对字典的键或值进行排序后再遍历。以下是一种常见的方法:

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        Dictionary<string, int> dict = new Dictionary<string, int>
        {
            {"apple", 10},
            {"banana", 5},
            {"orange", 8}
        };

        // 按照键排序
        var sortedKeys = dict.Keys.OrderBy(key => key);
        foreach (var key in sortedKeys)
        {
            Console.WriteLine($"{key}: {dict[key]}");
        }

        // 按照值排序
        var sortedValues = dict.OrderBy(pair => pair.Value);
        foreach (var pair in sortedValues)
        {
            Console.WriteLine($"{pair.Key}: {pair.Value}");
        }
    }
}

在上面的示例中,我们首先按照字典的键进行排序,然后遍历输出键值对;然后按照字典的值进行排序,再次遍历输出键值对。你也可以根据具体的需求选择要排序的方式,比如按照键或值的升序或降序来排序。

0