通常我們寫這個來獲取地圖中的鍵和值。爲什麼我們使用entrySet()方法並使用返回的集合來迭代映射?
Map m=new HashMap();
Set s=map.entrySet();
Iterator i=s.iterator()
while(s.hasNext()){
Map.Entry m= (map.Entry) s.next();
System.out.println(""+m.getKey()+""+ m.getValue());
}
爲什麼我們迭代使用set爲什麼沒有直接映射?
那麼不需要迭代器? – Jwan622 2016-01-07 17:13:04
@ Jwan622 for-each循環是在Java 5.0(2004)中添加的,它將爲您管理迭代器。對於集合,仍然有一個迭代器,但不需要直接使用它(除非你想刪除條目) – 2016-01-07 17:55:18
啊,所以在後臺有一個迭代器...明白了。因此,一般來說,我們使用地圖對象,調用entrySet將其變爲一個集合對象,然後我們通過將其映射到Map.Entry的切片上來迭代該集合對象。你會怎麼說呢? – Jwan622 2016-01-07 20:52:28