我有一个嵌套的哈希映射为
HashMap<Integer, HashMap<String,Integer>> productAdded = new HashMap<>();
我增加了价值
int price=12;
String name="Apple";
productAdded.put(1, new HashMap(){{ put(name, price); }});
我正在尝试将其检索为
for(int i=1;i<=ProductList.productAdded.size();i++)
{
System.out.println(ProductList.productAdded.get(i).keySet()+"\t :$"+ProductList.productAdded.get(i).values());
}
实际产量
[大披萨]:$ [12]
预期的输出。
大披萨:$ 12
最佳答案
用于每个循环进行迭代
for(Integer i :productAdded.keySet()) {
for(String s: productAdded.get(i).keySet()) {
System.out.println(s+"\t :$"+ProductList.productAdded.get(i).get(s));
}
}
您也可以通过使用Java 8流foreach来执行此操作
ProductList.productAdded.keySet().stream().forEach(item->{
ProductList.productAdded.get(item).keySet().stream().forEach(inneritem->{
System.out.println(inneritem+"\t :$"+ProductList.productAdded.get(item).get(inneritem));
});
});