2013-03-19 60 views
0

如果我有一張地圖,設立這樣的:在列表中獲取列表?

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()在這裏...但它是一個包含了雙重價值,ArrayList的

但沒有運氣尚未...任何想法?

+0

定義「沒有運氣」:究竟發生了什麼? – 2013-03-19 19:56:10

+0

那麼list.get(i).get(i)等等呢? – Rasmus 2013-03-19 19:56:32

+0

只能遍歷數組或java.lang.Iterable的實例 – BigBug 2013-03-19 19:56:40

回答

4

只要申請你爲外部映射相同,和檢索的entrySet。

for (Entry<Fruit, Map<Double, ArrayList<Fruit>>> entry : total.entrySet()) { 
    for (Entry<Double, ArrayList<Fruit>> entry2 : entry.getValue().entrySet()) { 

    } 
} 
0

嘗試

for (Map<Double, ArrayList<Fruit> map : total.values()) { 

    }