溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java中遍歷ConcurrentHashMap的四種方式詳解

發(fā)布時(shí)間:2020-08-29 01:38:10 來源:腳本之家 閱讀:728 作者:Franson 欄目:編程語言

這篇文章主要介紹了Java中遍歷ConcurrentHashMap的四種方式詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

方式一:在for-each循環(huán)中使用entries來遍歷

System.out.println("方式一:在for-each循環(huán)中使用entries來遍歷");
for (Map.Entry<String, String> entry: map.entrySet()) {
 System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}

方法二:在for-each循環(huán)中遍歷keys或values,這種方式適用于需要值或者鍵的情況,方法二比方法一快了10%

System.out.println("方法二:在for-each循環(huán)中遍歷keys或values,這種方式適用于需要值或者鍵的情況");
//遍歷鍵
for (String key : map.keySet()) {
 System.out.println("key = " + key);
}
//遍歷值
for (String value : map.values()) {
 System.out.println("value = " + value);
}

方法三:使用Iterator遍歷,使用并發(fā)集合不會報(bào)異常,性能類似于方法二

//使用泛型
Iterator<Map.Entry<String, String>> entries = map.entrySet().iterator();
System.out.println("使用Iterator遍歷,并且使用泛型:");
while (entries.hasNext()) {
	Map.Entry<String, String> entry = entries.next();
	System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
	//注意這里操作了集合,下面的的遍歷不會再打印0
	if("0".equals(entry.getKey())) {
		map.remove(entry.getKey());
	}
}
//不使用泛型
Iterator entrys = map.entrySet().iterator();
System.out.println("使用Iterator遍歷,并且不使用泛型");
while (entrys.hasNext()) {
	Map.Entry entry = (Map.Entry) entrys.next();
	String key = (String)entry.getKey();
	String value = (String)entry.getValue();
	System.out.println("Key = " + key + ", Value = " + value);
}

方式四:通過鍵找值遍歷,該方法效率相當(dāng)?shù)?不建議使用

System.out.println("方式四:通過鍵找值遍歷");
for (String key : map.keySet()) {
	String value = map.get(key);
	System.out.println("Key = " + key + ", Value = " + value);
}
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI