溫馨提示×

C#如何對字典按值進行排序

c#
小樊
348
2024-07-15 10:47:37
欄目: 編程語言

在C#中,可以通過使用LINQ對字典按值進行排序。以下是一個示例代碼,展示如何對一個字典按值進行升序或降序排序:

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

class Program
{
    static void Main()
    {
        Dictionary<string, int> dict = new Dictionary<string, int>
        {
            { "Alice", 30 },
            { "Bob", 20 },
            { "Charlie", 40 },
            { "David", 10 }
        };

        // 對字典按值升序排序
        var sortedDictAsc = dict.OrderBy(x => x.Value).ToDictionary(x => x.Key, x => x.Value);

        // 對字典按值降序排序
        var sortedDictDesc = dict.OrderByDescending(x => x.Value).ToDictionary(x => x.Key, x => x.Value);

        // 輸出排序后的字典
        Console.WriteLine("按值升序排序:");
        foreach (var item in sortedDictAsc)
        {
            Console.WriteLine($"{item.Key}: {item.Value}");
        }

        Console.WriteLine("\n按值降序排序:");
        foreach (var item in sortedDictDesc)
        {
            Console.WriteLine($"{item.Key}: {item.Value}");
        }
    }
}

在示例中,我們先創建了一個包含字符串鍵和整數值的字典。然后使用LINQ的OrderBy方法和ToDictionary方法對字典按值進行升序或降序排序。最后,輸出排序后的字典。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女