今天在完善功能的时候遇见了这样一个需求:通过list中的某一元素进行升序排列。
我们都知道,通过SQL语句查出来的数据顺序通常和它在数据库中的顺序是一样的,那么如何让这些数据集合进行排序呢?今天总结了几种方法。
方法一:
调用sort方法,实现升序和降序的排列。
List<int> list = new List<int>();
list.Sort();// 升序排序
list.Reverse();// 反转顺序
方法二:
使用lambda表达式,实现升序和降序的排列.
List<int> list= new List<int>(){5,1,22,11,4};
list.Sort((x, y) => x.CompareTo(y));//升序
list.Sort((x, y) => -x.CompareTo(y));//降序
方法三:
使用linq语句,实现升序和降序的排列。
var result1 = list.OrderBy(a => a.Total);//升序
var result3 = list.OrderBy(a => a.Total).ThenBy(a => a.Name);//升序
var result2 = list.OrderByDescending(a => a.Total).ThenByDescending(a => a.Name);//降序