2014-03-07 46 views
1

此代碼如何工作?無法理解此Map.entry參數

private double Summa(Iterator<Map.Entry<Integer, List<Double>>> i,int[] array) 

不太明白這個參數是如何工作的。 如果我沒有弄錯,Map.entry會返回map中的whats集合。 但是,這是否迭代通過地圖中的所有條目?

+3

'Map.Entry'不返回集合。它代表地圖中的單個條目。是的,使用'Iterator ',您可以迭代所有條目。 –

+0

請參閱[文檔](http://docs.oracle.com/javase/7/docs/api/java/util/Map.Entry.html)。 *「地圖條目(鍵值對)。 'Map.entrySet'方法返回地圖的集合視圖,其元素屬於這個類。»* – afsantos

回答

3

Iterator遍歷Set<Map.Entry>對象。爲了通過一個Iterator的方法你必須做:

Iterator<Map.Entry> iterator = map.entrySet().iterator(); 
Summa(iterator, array); 

,你必須具有定義爲井的array變量。

+0

好的,謝謝:) – Moltas

3

是的,它的確如此。 Map.Entry不會返回任何內容。 Map.Entry是一種類型。實際上它指向類Entry,它嵌套在Map類中。

實際上你有什麼是迭代器,它遍歷整數映射到雙精度列表的條目