//得到map的迭代器,用做遍歷map中的每個鍵值對
Iterator是迭代器,map以前應該定義過,姑且認爲是HashMap。
<Entry<String,String>>表示map中的鍵值對都是String類型的。
map.entrySet()是把HashMap類型的數據轉換成集合類型
map.entrySet().iterator()是去得到這個集合的迭代器,保存在iter裏面。。
迭代器這麼用:
while(iter.hasNext()) {
Entry obj = it.next();//就能得到map中的每個鍵值對了
}java----------------------------------------------------------------------------學習
Iterator<Entry<String,String>> iter=map.entrySet().iterator();按正常思路來寫怎樣寫
(調用entrySet()和iterator()不是分開寫的嗎?
爲何Entry的首字母要大寫
----------------------------------------------------------------
Iterator<String> iter;//聲明一個迭代器,泛型裏面是String類型,表示迭代元素是String類型的
Iterator<Entry<String,String>> iter;//而你提供的要稍微複雜一點,迭代元素自己就是一個Entry鍵值對,
Entry<String,String>表示其key值是String,value值也是String。spa後面部分:
HashSet set=map.entrySet();//將map類型數據轉換成集合set類型的。
iter=set.iterator();//得到集合的迭代器。迭代器只針對集合類型的數據,
所以map類型的必須先轉換成集合類型才能使用迭代器去獲取元素。itEntry首字母大寫是由於它是java提供的類。。類首字母大寫這是JavaBean規範泛型
不明白繼續問。。
---------------------------------------------------------------------------------------------
我學習的時候,HashMap使用Iterator迭代時,用keySet()來得到,在什麼狀況下,
使用entrySet(),二者有什麼區別
-------------------------------------------------------------------------------------------
keySet得到的只是key值的集合,
values得到的是value集合,
entryset得到的是鍵值對的集合。
具體怎麼用看你本身狀況須要哈。遍歷