gpt4 book ai didi

java - 打印出 hashmap 内部的 hashmap

转载 作者:搜寻专家 更新时间:2023-11-01 02:00:39 24 4
gpt4 key购买 nike

我正在尝试打印出一个 HashMap ,其中包含一个字符作为键,并将值作为另一个具有 Integer 和 Double 的 HashMap 到目前为止我有这个但没有用。

HashMap<Character, Map<Integer, Double>> MapInsideOfAMap = calc.MapInAMap(abc);
for (Entry<Character, Map<Integer, Double>> outer : MapInsideOfAMap.entrySet()) {
System.out.println("Char: " + outer.getKey() + "\n");
for (Map.Entry<Character, Map<Integer, Double> inner : MapInsideOfAMap.getValue().entrySet()) {
System.out.println("int = " + inner.getKey() + ", double = " + inner.getValue());
}
}

最佳答案

你的代码应该是这样的,

for (Entry<Character, Map<Integer, Double>> outer : MapInsideOfAMap.entrySet()) {
System.out.println("Char: " + outer.getKey() + "\n");
for (Entry<Integer, Double> inner : MapInsideOfAMap.get(outer.getKey()).entrySet()) {
System.out.println("int = " + inner.getKey() + ", double = " + inner.getValue());
}
}

好的,我明白你想做什么了,既然已经有了Outer map entry,就不用再用outer map reference了,直接这样就可以了,

for (Entry<Character, Map<Integer, Double>> outer : MapInsideOfAMap.entrySet()) {
System.out.println("Char: " + outer.getKey() + "\n");

for (Entry<Integer, Double> inner : outer.getValue().entrySet()) {
System.out.println("int = " + inner.getKey() + ", double = " + inner.getValue());
}
}

关于java - 打印出 hashmap 内部的 hashmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48643076/

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