gpt4 book ai didi

java - 假设我有一个好的 key ,当不适合在java中使用 map 时

转载 作者:行者123 更新时间:2023-12-02 00:09:11 24 4
gpt4 key购买 nike

Possible Duplicate:
When to use HashMap over LinkedList or ArrayList and vice-versa

自从遇到Maps在Java中我一直在广泛使用它们。特别是HashMap对于许多场景来说都是一个很好的选择。看起来它胜过 ArrayList在每个类别中 - 有人说迭代是不可预测的,但为此我们有 LinkedHashMap

所以,我的问题是:为什么不使用 HashMap只要我们有一个可靠的不可变 key ,就一直可以吗?

此外,使用像 HashMap 这样的东西是否合适?对于非常少量(<10)的项目,或者是否有一些我没有考虑的额外开销?

最佳答案

当您的键是连续整数时,请使用ArrayList。 (如果它们不是基于 0,则只需使用偏移量。)访问(特别是随机访问)和更新效率更高。否则,当然,HashMap(或者,正如您所说,LinkedHashMap)是非常有用的数据结构。

我相信 HashMap 的默认初始大小是 16 个存储桶,因此对于非常小的列表会产生一些开销。但除非您要创建大量 map ,否则它不应该成为编码中的一个因素。

关于java - 假设我有一个好的 key ,当不适合在java中使用 map 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13225125/

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