gpt4 book ai didi

java - 我们知道 HashSet 内部工作原理与 HashMap 一样,所以在打印 Hashset 对象时为什么元素出现在数组中?

转载 作者:行者123 更新时间:2023-12-02 01:53:24 31 4
gpt4 key购买 nike

HashSet prime=new HashSet();    // I have created HashSet Object in eclipse IDE
System.out.println(prime); //As I am getting [] though HashSet internally work as HashMap data structure;

为什么不使用大括号{}

最佳答案

HashSet继承AbstractCollection.toString :

The string representation consists of a list of the collection's elements in the order they are returned by its iterator, enclosed in square brackets ("[]")

最初是否应该使用 {} 来实现它?也许。可以在不破坏向后兼容性的情况下进行更改吗?没有。

最终,无论选择哪种格式,您都不会让每个人都满意。如果您想要特定格式,则应该以该格式打印,例如:

prime.stream().map(Object::toString).collect(joining(", ", "{", "}"))

(尽管您需要将 prime 设为非原始才能编译)。

关于java - 我们知道 HashSet 内部工作原理与 HashMap 一样,所以在打印 Hashset 对象时为什么元素出现在数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52662994/

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