黑马程序员技术交流社区

标题: IComparable和IComparer接口的区别是什么? [打印本页]

作者: 潘金锋    时间: 2014-2-10 20:24
标题: IComparable和IComparer接口的区别是什么?
本帖最后由 潘金锋 于 2014-2-11 21:23 编辑

IComparable和IComparer接口的区别是什么?
作者: 马山闪    时间: 2014-2-11 11:13
IComparable接口要实现CompareTo方法,并且一定要通过值可以排序的类型来实现,例如基本数值类型(整型等),或者字符串。
IComparer接口其实是特定用于Array的Sort和BinarySearch方法,通过实现IComparer接口的Compare方法以确定Sort如何进行对对象进行排序。

作者: 阿刚    时间: 2014-2-11 17:05
IComparable和ICompare 接口是.net framework 中比较对象的标准方式,这两个接口提供一个返回值类似(大于0 等于0 小于0)的比较方法,二者区别如下:
1. IComparable 在要比较的对象的类中实现,可以比较该对象和另一个对象。
2. IComparer 在一个单独的类中实现,可以比较任意两个对象。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2