Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何覆盖equals和hashcode以列出<;长期>;参数_Java - Fatal编程技术网

Java 如何覆盖equals和hashcode以列出<;长期>;参数

Java 如何覆盖equals和hashcode以列出<;长期>;参数,java,Java,我有一个名为“组”的类属性: private List<Long> groups; 你不能。列表接口指定了它的和合同以及任何可能违反的更改的实现。您更新的问题的答案是:它取决于特定的平等标准 列表的默认equals方法比较大小和所有对应元素。这意味着,如果列表中的元素相同,但顺序不同,则它们并不相等。如果它符合你的平等条件,那么你肯定可以使用它。如果没有,您必须根据需要手动比较列表。谢谢,Louis,那么此属性不是类将覆盖的equals和hashcode的一部分,对吗?…什么?那个

我有一个名为“组”的类属性:

private List<Long> groups;

你不能。
列表
接口指定了它的和合同以及任何可能违反的更改的实现。

您更新的问题的答案是:它取决于特定的平等标准


列表的默认
equals
方法比较大小和所有对应元素。这意味着,如果列表中的元素相同,但顺序不同,则它们并不相等。如果它符合你的平等条件,那么你肯定可以使用它。如果没有,您必须根据需要手动比较列表。

谢谢,Louis,那么此属性不是类将覆盖的equals和hashcode的一部分,对吗?…什么?那个问题没有意义。包含
groups
字段的类可以实现自己的
hashCode
equals
契约,不管它喜欢什么,它只是不能更改
groups
本身的
hashCode
equals
。很抱歉我的错误解释。。我只是想知道在equals和hashcode中使用这个属性是否有任何问题,就像另一个单独的字段,而不是集合。不,一点也不。XY问题?为整数列表重写equals和hashcode的目标是什么?
if(!groups.equals(other.groups))
  return false