排序 C# 列表
Sorting C# List
我搜索了很多关于这个话题的例子,知道 class 列表中的项目必须继承 IComparable 接口并重写 CompareTo 方法,如果我想使用 Sort List的方法。
我的问题是如何定义排序规则?我发现的大多数示例都是按升序排列数字的。
一些示例建议使用 Linq。我不熟悉它,所以如果你也想向我推荐 Linq,那么例子会让你的解释更清楚。谢谢。 ^^
列表中的 class 项无需实施 IComparable
。
您可以使用 this override of List<T>.Sort
, it takes Comparison<T>
委托作为参数。所以所有比较逻辑都可以在那个委托中。
基本上您可以根据需要定义比较(排序)规则 - 但委托应采用两个参数和 return 如果第一个参数小于第二个则小于 0 的整数,如果它们相等则为 0 并且整数大于0 否则。
我搜索了很多关于这个话题的例子,知道 class 列表中的项目必须继承 IComparable 接口并重写 CompareTo 方法,如果我想使用 Sort List的方法。
我的问题是如何定义排序规则?我发现的大多数示例都是按升序排列数字的。
一些示例建议使用 Linq。我不熟悉它,所以如果你也想向我推荐 Linq,那么例子会让你的解释更清楚。谢谢。 ^^
列表中的 class 项无需实施 IComparable
。
您可以使用 this override of List<T>.Sort
, it takes Comparison<T>
委托作为参数。所以所有比较逻辑都可以在那个委托中。
基本上您可以根据需要定义比较(排序)规则 - 但委托应采用两个参数和 return 如果第一个参数小于第二个则小于 0 的整数,如果它们相等则为 0 并且整数大于0 否则。