C#列表List排序的两种情况

  1. 对于普通的int型列表List,如下
List<int> list = new List<int>();
list.Sort(); // 升序排序
list.Reverse(); // 降序排序:先升序排序,再反转顺序 
  1. 对于Class型的列表List,根据类的某一属性进行排序,如下
 //使用lambda表达式,在前面加个负号就是降序了       
        public class WorkInfo
        {
            public int m_WorkID; 
        }
        List<WorkInfo> m_TestList = new List<WorkInfo>(); 
        m_TestList.Sort((x, y) => x.m_WorkID.CompareTo(y.m_WorkID)); //升序排序
        m_TestList.Sort((x, y) => -x.m_WorkID.CompareTo(y.m_WorkID)); //降序排序 

如果是这种情况:

 Dictionary<int,WorkInfo> dict = new Dictionary<int,WorkInfo>();
 List<int> testList = new List<int>(); 
 testList.Sort((x, y) => dict[x].m_WorkID.CompareTo(dict[x].m_WorkID)); //升序排序  =》 这样通过id去找到对象,比较对象里的m_WorkID值排序,这样的做法是没有用的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值