gpt4 book ai didi

java - 如何将 Java 7+ 'Objects.hash()' 与数组一起使用?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:53:27 26 4
gpt4 key购买 nike

我很喜欢Java 7+的写法hashCode()方法:

@Override
public int hashCode() {
Objects.hash(field1, field2);
}

但它不能正确处理数组。以下代码:

@Override
public int hashCode() {
Objects.hash(field1, field2, array1, array2);
}

将不起作用,对于 array1array2 常规 hashCode() 而不是 Arrays.hashCode() 将被调用。

如何以正确的方式对数组使用 Objects.hash()

最佳答案

你可以试试:

Objects.hash(field1, field2, Arrays.hashCode(array1), Arrays.hashCode(array2));

这与创建一个包含field1field2array1 的内容和array2 的内容的数组相同。然后在这个数组上计算 Arrays.hashCode

关于java - 如何将 Java 7+ 'Objects.hash()' 与数组一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30385018/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com