由于在项目中需要比较一个java类是否与另一个java类相同,这里我们就使用到了重写hashCode与equals方法
eg:
public class A{
private String name;
private String sex;
//getter setter
@Override
public boolean equals(Object obj) {
A a=(A)obj;
return name.equals(a.name) && sex.equals(a.sex);
}
@Override
public int hashCode() {
String in = name+ sex;
return in.hashCode();
}
}
这样后再比较2个对象就可以了。
注:
* 比较两个对象相等的方法
* *equals()方法 equals 相等的两个对象hashCode 一定相等 ,但是equals不相等的对象,hashCode有可能相等
* *hashCode()方法 hashcode()不等,一定能推出equals()也不等;hashcode()相等,equals()可能相等,也可能不等。
* *判断两个对象相等的方法是 equals相等 hashCode相等
* *equals()方法 和 hashCode()方法 都是必须要重写的