我不知道如何贴图片, 所以就把图片传到贴吧了
http://tieba.baidu.com/p/4340216061
1
Bryan0Z 2016-02-05 15:55:29 +08:00 via Android
噗,比如你的类 human 有个属性 name(String 类型),你希望通过这个属性比较两个类是否相同
boolean equals(human a){ return this.name.equals(a.name); } |
2
Bryan0Z 2016-02-05 15:56:30 +08:00 via Android
上面那个例子和代码都不好,楼主别打我(逃
|
3
wanghui 2016-02-05 16:30:10 +08:00 1
默认 equals 比较两个对象地址是否相等,重写 equals 可以在语意上判断两个对象是否相等
|
4
xuhaoyangx 2016-02-05 16:36:39 +08:00
楼上解释很清楚
|
5
wizardforcel 2016-02-05 19:35:48 +08:00 via Android 1
覆写 equal ,以及 hashcode 。
其实不用你自己写, ide 能够选择加入的字段自动生成。 如果你不自己写,就会调用 object 上的,效果是比较地址。没有两个对象的地址是一样的。 |
6
yanguango 2016-02-05 20:05:42 +08:00 1
如果你的类的对象要作为 hashtable 的 key ,你的类就必须实现 equals 和 hashCode, 原因见 hastable 的原理
|