如果我有这样的地图设置:
Map<Fruit, Map<Double, ArrayList<Fruit>>> total = new HashMap<Fruit, Map<Double, ArrayList<Fruit>>>();
我可以通过以下方式访问外层:
for (Entry<Fruit, Map<Double, ArrayList<Fruit>>> entry : total.entrySet()) {
}
但是如何抓住Map<Double, ArrayList<Fruit>>
(内部地图)? ....似乎无法弄明白。
for (Entry<Fruit, Map<Double, ArrayList<Fruit>>> entry : total.entrySet()) {
for (Map<Double, ArrayList<Fruit>> entry2 : entry.getValue()) {
}
}
不能在这里使用entry.getValue()...但它是包含Double,ArrayList的值
但没有运气......任何想法?
答案 0 :(得分:4)
只需应用与外部Map相同的操作,然后检索EntrySet。
for (Entry<Fruit, Map<Double, ArrayList<Fruit>>> entry : total.entrySet()) {
for (Entry<Double, ArrayList<Fruit>> entry2 : entry.getValue().entrySet()) {
}
}
答案 1 :(得分:0)
尝试
for ( Map<Double, ArrayList<Fruit> map : total.values()) {
}