gpt4 book ai didi

Java HashMap 内容

转载 作者:行者123 更新时间:2023-12-01 20:18:15 32 4
gpt4 key购买 nike

我有一个 HashMap 来存储我的数据 <Integer, ArrayList<String>> 。我用过put(...)如果 map 尚不存在,则添加数据。我用过containsKey()检查条目 Key 是否已在 map 中。如果存在,我将通过执行以下操作将字符串添加到键中:

x.get(i).add(str)

为了获取数据,我只是用 keySet() 做了一个 for 循环哈希值。

如果我有这个哈希:

int -> array of strings
1 -> "a", "b", "c"
2 -> "aa", "bb", "cc"
3 -> "aaa", "bbb", "ccc"

我的问题是,读取数据的顺序不一致。在一台 PC 中,它可能按以下顺序读取 key :2、1、3。在另一台 PC 中,它可能按以下顺序读取:1、2、3。

我希望所有 PC 上的读取顺序都相同。它们进入 hashmap 的顺序也是相同的,但是为什么 hashmap 读取 Keyset 的顺序不同呢?

最佳答案

你读过HashMap的Javadoc了吗?它不保证订购。

This class makes no guarantees as to the order of the map; in particular, it does not guarantee that the order will remain constant over time.

如果您想要一致的排序,请使用 LinkedHashMapTreeMapHashMap 缺乏保证意味着,如果 Java 开发人员选择,它可以在星期二向后迭代。

关于Java HashMap 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45340555/

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