最近看了点Java的东西,看了关于自定义equals方法的一点基础的东西。总结如下:
以下是步骤:
1.首先判断参数是不是null,是的话就返回false,不是就继续判断。
2.因为参数是Object类型的,所以需要判断参数的实际类型,一般分为两种情况:第一种就是你不区分子类和父类,这时采用instanceof操作符;第二种就是需要区分的情况,这时采用this.getClass() == 参数名.getClass()进行判断。(Class类没有实现equals方法,只需使用==即可)上述判断不成立则返回false。
3.把参数强制转换成当前类型。
4.自定义你要比较的内容。
一般来说:你重写了equals方法就要重写hashCode方法,关于hashCode有点复杂,以后接着总结。