gpt4 book ai didi

java - addAll to Set 不在 java 中添加值

转载 作者:行者123 更新时间:2023-11-29 05:52:59 28 4
gpt4 key购买 nike

我在 Object(Obj1) 中有一个属性

Set<AssignedService> serviceList;
public Set<AssignedService> getServiceList();

在某些情况下我正在执行以下操作

Obj1.getServiceList().clear();
Obj1.getServiceList().addAll(services);

也设置服务的地方

但我看到的最终结果是服务集有 4 个对象/数据元素但是 Obj1.getServiceList() 在 addAll 之后返回一个空集

这里有什么问题。 AssignedService 对象是否有问题,因为它没有实现 IComparable

最佳答案

您应该先阅读此 excellent piece.equals()

然后,正如其他人所指出的,检查 AssignedService 上的 equals() .hashcode() 的实现 类。最有可能在此处找到根本原因。

您还可以检查 .addAll(...) 调用的返回值 - false 表示底层 Set 是' 通过方法调用修改。

干杯,

关于java - addAll to Set 不在 java 中添加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13230134/

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