为了账号安全,请及时绑定邮箱和手机立即绑定

如何按 C# 列表排序,以便重复项以其插入的相反顺序出现

如何按 C# 列表排序,以便重复项以其插入的相反顺序出现

C#
摇曳的蔷薇 2021-06-24 18:05:03
如何按列表排序,使重复项以插入的相反顺序出现(考虑到我不会使用列表的插入方法在中间插入任何项)以下面的例子为例:public class Program{    public static void Main(string[] args)    {        List<KeyValuePair<int, string>> list = new List<KeyValuePair<int, string>>();        list.Add(new KeyValuePair<int, string>(1, "A"));        list.Add(new KeyValuePair<int, string>(3, "F"));        list.Add(new KeyValuePair<int, string>(4, "G"));        list.Add(new KeyValuePair<int, string>(2, "B"));        list.Add(new KeyValuePair<int, string>(2, "C"));        list.Add(new KeyValuePair<int, string>(3, "E"));        list.Add(new KeyValuePair<int, string>(3, "D"));        list=list.OrderBy(a=>a.Key).ToList();        foreach(var item in list)        {            Console.WriteLine(item);        }    }}输出:[1, A][2, B][2, C][3, F][3, E][3, D][4, G]我希望重复的顺序与插入的顺序相反,例如 F、E、D 应显示为 D、E、F。我虽然 orderByDescending 可以解决问题,但这也会保持插入的顺序。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 156 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信