gpt4 book ai didi

java - HashMap ,无序键

转载 作者:行者123 更新时间:2023-11-30 06:07:03 24 4
gpt4 key购买 nike

我正在用 Java 制作 HashMap 。我正在从文本文档中提取键和值。该文档具有相同的 key ,格式为 37=1904、527=9999、54=7 等。现在我有这个代码。

Map<Integer,String> hm1 = new HashMap<Integer,String>();

String[] tokens = line.split("");
for (int i = 0; i != tokens.length; i++) {
int dataIndex = tokens[i].indexOf('=') + 1;

String data = tokens[i].substring(dataIndex);

hm1.put(new Integer(i),data);

当值逐行处于相同的精确顺序时,这对于将值放入 HashMap 中非常有效。当它们无序时,它们仍然返回一个值,但不是与键关联的值。例如,有时 527=9999 是第二组数字,有时是第十组数字,但根据我的 HashMap 的配置方式,它不会返回我想要的值。我可以做些什么改变来使 HashMap 要么对键和值进行排序,要么只返回值,但只有当我获得特定的键而不是按顺序时。

我正在考虑制作一个属性文件,但是为了让 HashMap 从属性文件中提取属性文件必须从文本文档中填写什么结构。

最佳答案

您似乎想保持 Map 中的插入顺序。在这种情况下,您需要使用 LinkedHashMap :

Map<Integer, String> hm = new LinkedHashMap<Integer, String>();

关于java - HashMap ,无序键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51085311/

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