假设我有一个班级(同样的方法也存在):
public class SomeClassA {
private int a;
private int b;
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + a;
result = prime * result + b;
return result;
}
}
另一堂课:
public class SomeClassB {
List<SomeClassA> firstList;
List<SomeClassA> secondList;
如果两个对象在firstList中具有相同的对象而在secondList中具有相同的对象,那么如何构造哈希码以使两个对象看起来是相等的。
//汉克
答案 0 :(得分:1)
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + firstList.hashCode();
result = prime * result + secondList.hashCode();
return result;
}