C#内建接口:IComparable
这节开一个新的系列:C#内建接口,主要给大家讲一下C#内部给我们定义的一些常用的接口,以及它们是怎么使用的。基本上一节讲一个吧,本节先从IComparable开始。
01
了解IComparable
一般的,值类型的数据比较大小,就是看它俩的值,这种比较很单纯,但是也有某些情况,我们需要对引用类型进行比较,也就是说比较两个对象谁大谁小,对象之间的比较其实就是根据业务需求,比较其属性,为了统一一个对象比较之间的规范,C#中定义了一个名为IComparable的接口,顾名思义,继承了这个接口的对象都是可比较的嘛,那下面就来看看这个接口的成员吧:
这个接口还是很简单的 ,就一个CompareTo方法,参数是可空类型的任意对象,返回一个int数字,意思就是比较的结果如果是小于,则返回-1,等于返回0,大于则返回1,或者根据您的业务,返回任何数字都是可以。
02
代码演示
下面从代码中演示一下它的使用:
以上是一个矩形类,有宽和高两个属性,比较矩形大小就是比较其面积大小,所以我继承了IComparable接口,并将面积比较代码写在了里面,具体代码很简单,也就不做解释了,但大家需要注意一点,因为参数是object类型,并且引用类型可以为空,所以不要忘记一些比较的参数检查。
下面用一个控制台程序为大家做一下结果演示:
上图代码中我创建了两个对象,一个是12*12的samll,一个是24*24的big,输出结果为:
大家也许注意到了我注释掉的代码,string也是实现了这个接口的,有兴趣的同学可以自己写写代码测试一下,字符串之间是根据其字符的ASCII表位置来比较的,如果第一个字符相同,则比较第二个,这样以此类推。
- C#中如何使用IComparable<T>与IComparer<T>接口(转载)
- C# 常用接口学习 IComparable 和 IComparer
- c# 实现IComparable、IComparer接口、Comparer类的详解
- C#学习笔记 IComparable接口 IComparable<T>接口 IComparer接口
- C#中IComparable接口和IComparer接口应用的实例
- [原创]详述IComparer,IComparable接口,实现自定义方法比较对象大小并排序(C#)
- c# 实现IComparable、IComparer接口、Comparer类的详解
- C#中的IComparable 和 IComparer 接口,实现列表中的对象比较和排序
- c#如何实现IComparable接口
- C# IComparable接口、IComparer接口以及排序应用(超详细实例)
- C#中关于实现IComparable接口的说明
- C#中IComparable泛型接口
- C#利用iComparable接口实现List排序
- 实现Icomparable接口(C#)
- c# 实现IComparable、IComparer接口、Comparer类的详解
- C# IComparable接口、IComparer接口和CompareTo(Object x)方法、Compare()方法
- C#語法學習IComparable接口
- C#中IComparable<T>和IComparer<T>接口的使用
- C# 接口的特点、接口的作用、接口的简单应用
- 基于C#的接口基础教程之四