【发布时间】:2022-01-21 13:43:30
【问题描述】:
我正在使用HashMap。当我遍历地图时,数据以(通常相同的)随机顺序返回。但是数据是按特定顺序插入的,我需要保留插入顺序。我该怎么做?
【问题讨论】:
我正在使用HashMap。当我遍历地图时,数据以(通常相同的)随机顺序返回。但是数据是按特定顺序插入的,我需要保留插入顺序。我该怎么做?
【问题讨论】:
LinkedHashMap 正是您要找的。p>
它与HashMap 完全一样,只是当您对其进行迭代时,它会按插入顺序显示项目。
【讨论】:
java.util.Comparator<T> 和 java.util.Collections.sort() 明确不必要,感谢您提供非常有用的信息。
HashMap 在文档的第二行中是无序的:
这个类不保证地图的顺序;特别是,它不保证订单会随着时间的推移保持不变。
也许您可以按照 aix 的建议使用 LinkedHashMap 或其他有序集合。在Choosing the right Collection 上查看 javapractices.com 的指南。
【讨论】: