真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中HashMap迭代刪除使用方法是什么

這篇文章主要講解了“Java中HashMap迭代刪除使用方法是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Java中HashMap迭代刪除使用方法是什么”吧!

創(chuàng)新互聯(lián)建站自2013年創(chuàng)立以來(lái),是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元鐵西做網(wǎng)站,已為上家服務(wù),為鐵西各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

I. Map 迭代刪除

迭代刪除,在不考慮并發(fā)安全的前提下,我們看下可以怎么支持

1. 非常不優(yōu)雅版本

我們知道m(xù)ap并不是繼承自Collection接口的,HashMap 也沒(méi)有提供迭代支持,既然沒(méi)法直接迭代,那我就老老實(shí)的low b版好了

Map map = new HashMap<>();map.put("a", 1);map.put("b", 2);map.put("c", 3);map.put("d", 4);List removeKey = new ArrayList<>();for (Map.Entry e: map.entrySet()) {  if (e.getValue() % 2== 0) {    removeKey.add(e.getKey());  }}removeKey.forEach(map::remove);

上面的實(shí)現(xiàn)怎么樣?并沒(méi)有什么毛病

(為啥不直接在遍歷中刪除?)

2. 正確姿勢(shì)版

雖然Map沒(méi)有迭代,但是它的entrySet有啊,所以我們可以通過(guò)它來(lái)實(shí)現(xiàn)遍歷刪除

Map map = new HashMap<>();map.put("a", 1);map.put("b", 2);map.put("c", 3);map.put("d", 4);Iterator> iterator = map.entrySet().iterator();Map.Entry entry;while (iterator.hasNext()) {  entry = iterator.next();  if (entry.getValue() % 2 == 0) {    iterator.remove();  }}System.out.println(map);

上面這個(gè)可能是我們經(jīng)常使用的操作姿勢(shì)了,利用迭代器來(lái)操作元素

3. 簡(jiǎn)潔版

到j(luò)dk8之后,針對(duì)容器提供了很多簡(jiǎn)潔的操作方式,迭代刪除這方面可以說(shuō)更加簡(jiǎn)單了

Map map = new HashMap<>();map.put("a", 1);map.put("b", 2);map.put("c", 3);map.put("d", 4);map.entrySet().removeIf(entry -> entry.getValue() % 2 == 0);

4. 其他

盡信書則不如,已上內(nèi)容,純屬一家之言,因個(gè)人能力有限,難免有疏漏和錯(cuò)誤之處,如發(fā)現(xiàn)bug或者有更好的建議,歡迎批評(píng)指正,不吝感激

感謝各位的閱讀,以上就是“Java中HashMap迭代刪除使用方法是什么”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Java中HashMap迭代刪除使用方法是什么這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!


網(wǎng)頁(yè)題目:Java中HashMap迭代刪除使用方法是什么
當(dāng)前URL:http://weahome.cn/article/piieoo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部