如何在 C# 中按字典值对字典列表进行排序?

csharpprogrammingserver side programming

设置字典列表的键和值。

var d = new Dictionary<string, int>();
d.Add("Zack", 0);
d.Add("Akon", 3);
d.Add("Jack", 2);
d.Add("Tom", 1);

获取并排序键。

var val = d.Keys.ToList();
val.Sort();

您可以尝试运行以下代码,按值对字典列表进行排序。

示例

using System;
using System.Collections.Generic;
using System.Linq;
class Demo {
   static void Main() {
      var d = new Dictionary<string, int>();
      d.Add("Zack", 0);
      d.Add("Akon", 3);
      d.Add("Jack", 2);
      d.Add("Tom", 1);
      // 获取键并对其进行排序。
      var val = d.Keys.ToList();
      val.Sort();
      // 循环遍历键。
      foreach (var key in val) {
         Console.WriteLine("{0}: {1}", key, d[key]);
      }
   }
}

输出

Akon: 3
Jack: 2
Tom: 1
Zack: 0

相关文章