排序对象列表

本文关键字:列表 对象 排序 | 更新日期: 2023-09-27 18:04:40

我在List()中保留了一个对象列表。我想按对象的属性对列表进行排序。

例如,假设对象是一个消息,消息有:内容,日期,标题,…

我想按照邮件的日期对列表进行排序。

是否有任何List方法或任何其他方法使这种排序容易?

谢谢。

排序对象列表

是的,使用排序。如果你的列表是l:

l.Sort((a,b) => {
    if (a == b) return 0;
    if (a == null) return -1;
    if (b == null) return 1;
    return a.Date.CompareTo(b.Date)
});

这里假设date属性的类型实现了CompareTo()。

您可以实现IComparer<YourObject>并使用该比较器对

进行排序

如果你正在使用泛型(即使用List),你可以使用排序方法MSDN

请参阅我对这个问题的回答,了解如何创建一个扩展方法,使您可以执行

myList.SortBy(x=>x.Date)