【发布时间】:2015-05-21 21:53:16
【问题描述】:
我真的很喜欢 Java 7+ 的写作风格hashCode() 方法:
@Override
public int hashCode() {
Objects.hash(field1, field2);
}
但它不能与数组一起正常工作。以下代码:
@Override
public int hashCode() {
Objects.hash(field1, field2, array1, array2);
}
不会起作用,因为array1 和array2 将调用常规hashCode() 而不是Arrays.hashCode()。
如何以正确的方式将Objects.hash() 与数组一起使用?
【问题讨论】:
-
你可能不得不使用
Arrays.deepHashCode。 -
@LouisWasserman - 你能详细说明为什么我需要使用 deep 哈希码吗?
标签: java arrays java-7 hashcode