在C#中排序列表

时间:2011-04-06 21:16:40

标签: c# list sorting

所以我有这个C#列表:

List<DatsWussup.Models.JQGridMessage> gridMessages = new List<DatsWussup.Models.JQGridMessage>();

每个JQGridMessage都有一个名为age的属性。按年龄(最小的第一个)排序此列表的最快捷,最有效的方法是什么。年龄是一个int。

谢谢!

4 个答案:

答案 0 :(得分:9)

List<T>类有一个Sort方法,可用于对数据进行排序。一个重载需要一个Comparison委托,可以通过匿名函数实现。例如

gridMessages.Sort((x, y) => x.Age.CompareTo(y.Age));

答案 1 :(得分:7)

使用Linq:

var sortedEnumerable = gridMessages.OrderBy(m => m.Age);

这将返回按年龄排序的 new IEnumerable。

答案 2 :(得分:2)

gridMessages.Sort((m1, m2) => m1.Age.CompareTo(m2.Age));

答案 3 :(得分:0)

你能用:

gridMessages = gridMessages.OrderBy(x => x.age).toList();