gpt4 book ai didi

java - 将 Integer 对象添加到 hashSet

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:49:05 25 4
gpt4 key购买 nike

考虑以下代码:

6.  Set<Integer> set = new HashSet<Integer>();
7. Integer i1 = 45;
8. Integer i2 = 46;
9. set.add(i1);
10. set.add(i1);
11. set.add(i2); System.out.print(set.size() + " ");
12. set.remove(i1); System.out.print(set.size() + " ");
13. i2 = 47;
14. set.remove(i2); System.out.print(set.size() + " ");
15. System.out.println(set.contains(i2));

代码输出:

2 1 1 false

在第 14 行之后,我假设大小为 0 但实际为 1。我猜想在第 13 行的集合中添加了一个新对象 i2,所以我在第 15 行对其进行了测试,但它返回了 false(即没有 i2 存在于集合中),这是为什么?

最佳答案

您实际上并没有从第 14 行的集合中删除任何内容,因为您将上一行的 i2 重新分配给集合中不存在的不同内容。尝试看看当您完全删除第 13 行时会发生什么。

附言set 的 remove 方法实际上返回一个 boolean 值,因此您可以使用 System.out.println(set.remove(i2)) 查看 i2 是否真的被删除了。

关于java - 将 Integer 对象添加到 hashSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12236490/

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