假设我有一个类(也存在 equal 方法):
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 中具有相同的对象时被视为相等。
//汉克
最佳答案
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + firstList.hashCode();
result = prime * result + secondList.hashCode();
return result;
}
关于java - 如何从具有两个包含相同类型对象的列表的对象生成哈希码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30763300/