十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
小編給大家分享一下JAVA里面如何獲取map的key和value,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
目前成都創(chuàng)新互聯(lián)已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁(yè)空間、網(wǎng)站托管運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、朝天網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
獲取map的key和value的方法分為兩種形式:
map.keySet():先獲取map的key,然后根據(jù)key獲取對(duì)應(yīng)的value;
map..entrySet():同時(shí)查詢map的key和value,只需要查詢一次。
同時(shí)遍歷key和value時(shí),keySet與entrySet方法的性能差異取決于key的具體情況,如復(fù)雜度(復(fù)雜對(duì)象)、離散度、沖突率等。換言之,取決于HashMap查找value的開(kāi)銷(xiāo)。entrySet一次性取出所有key和value的操作是有性能開(kāi)銷(xiāo)的,當(dāng)這個(gè)損失小于HashMap查找value的開(kāi)銷(xiāo)時(shí),entrySet的性能優(yōu)勢(shì)就會(huì)體現(xiàn)出來(lái)。
只遍歷key時(shí),keySet方法更為合適,因?yàn)閑ntrySet將無(wú)用的value也給取出來(lái)了,浪費(fèi)了性能和空間。
只遍歷value時(shí),使用vlaues方法是最佳選擇,entrySet會(huì)略好于keySet方法。
通過(guò)map.keySet() 方法
方法一:通過(guò)得到key的值,然后獲取value
for(String key : map.keySet()){ String value = map.get(key); System.out.println(key+" "+value); }
方法二:使用迭代器,獲取key
Iteratoriter = map.keySet().iterator(); while(iter.hasNext()){ String key=iter.next(); String value = map.get(key); System.out.println(key+" "+value); }
通過(guò)map.entrySet()方法
方法一:循環(huán)map里面的每一對(duì)鍵值對(duì),然后獲取key和value
for(Entryvo : map.entrySet()){ vo.getKey(); vo.getValue(); System.out.println(vo.getKey()+" "+vo.getValue()); }
方法二:使用迭代器,獲取key
Iterator> iter = map.entrySet().iterator(); while(iter.hasNext()){ Entry entry = iter.next(); String key = entry.getKey(); String value = entry.getValue(); System.out.println(key+" "+value); }
Java主要應(yīng)用于:1. web開(kāi)發(fā);2. Android開(kāi)發(fā);3. 客戶端開(kāi)發(fā);4. 網(wǎng)頁(yè)開(kāi)發(fā);5. 企業(yè)級(jí)應(yīng)用開(kāi)發(fā);6. Java大數(shù)據(jù)開(kāi)發(fā);7.游戲開(kāi)發(fā)等。
看完了這篇文章,相信你對(duì)“JAVA里面如何獲取map的key和value”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!