
回复
1、equals
所有的类都具备的能力(比较两个对象代表的是不是同一个实际事物)
需要覆写 equals 方法才能实现
在这里我们定义了 学生这个类,并重写了 equals 方法:
如果 不重写 equals 的方法,上面代码的执行是两个 false,重写后执行结果是 true 、 false
2、对象大小的比较:
(1)实现 Comparable 接口
在java中,要声明比较大小能力,需要实现 Comparable 接口
重写 compareTo 方法,指导 java,进行对象大小的比较(通过对象的什么属性比较大小)
实例化对象,进行对象比较
(2)构造比较器(Comparator)
为什么要使用比较器的方式,上面第一种比较方式怎么了?
当我们使用 实现Comparable接口 的方式来比较对象大小的时候,我们需要重写 compareTo 方法,在方法中我们定义了对象的比较是采用对象的
哪种属性来比较大小,而我们想换另外一种对象属性来比较大小的时候,就需要重写 compareTo 方法,而在现实中,我们很少有机会可以修改compareTo
更多的是对他的使用,所以我们需要另一种方法来满足我们想通过多种方式来比较对象的大小
外部比较(比较器) 实现 Comparator ------- 构造一个天平(不需要比较的类具备 Comparable 的能力)
构造一个按对象 身高 排序的构造器
构造一个按对象 体重 排序的构造器
实例化两个对象,分别采用不同的构造比较器比较 两个对象的大小
————————————————
版权声明:本文为博主「小乔不掉发」的原创文章