【发布时间】:2011-05-26 12:39:03
【问题描述】:
我写了一大堆对象,它们都是集合的一部分,我需要对它们进行大量的排序和搜索。在大多数这些对象上,我已经实现并覆盖了Equals 方法、IEquatable 和operator! 和operator==。
现在我想在已实现上述所有内容的对象上使用List<T>.Sort,结果我需要实现IComparable 来进行自定义排序。
为什么 Sort 使用 IComparable,那么在我的所有对象中使用 IEquatable 有什么意义?
还有Object.Equal 覆盖与这一切有什么关系?
【问题讨论】:
-
思想实验;你有三个整数,
a、b和c;你知道a==b、a!=c和b!=c(这是所有可用的组合)。现在:将a、b和c按升序排列;p
标签: .net sorting collections equality