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

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

java中map遍歷代碼 java如何遍歷map

java中map集合怎么遍歷

遍歷方法代碼如下:

創(chuàng)新互聯(lián)公司是一家專(zhuān)注于網(wǎng)站建設(shè)、成都做網(wǎng)站與策劃設(shè)計(jì),牡丹網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:牡丹等地區(qū)。牡丹做網(wǎng)站價(jià)格咨詢:18980820575

import?java.util.HashMap;

import?java.util.Map;

public?class?App01?{

public?static?void?main(String[]?args)?{

MapString,?String?map1?=?new?HashMapString,?String();

map1.put("A",?"ABC");

map1.put("B",?"BCD");

map1.put("C",?"CDE");

//?遍歷

for(Map.EntryString,?String?entry?:?map1.entrySet())?{

System.out.println(entry.getKey()?+?"-"?+?entry.getValue());

}

}

}

java Map 怎么遍歷

關(guān)于java中遍歷map具體有四種方式,請(qǐng)看下文詳解。

1、這是最常見(jiàn)的并且在大多數(shù)情況下也是最可取的遍歷方式,在鍵值都需要時(shí)使用。

MapInteger, Integer map = new?HashMapInteger, Integer();

for?(Map.EntryInteger, Integer entry : map.entrySet()) {

System.out.println("Key = "?+ entry.getKey() + ", Value = "?+ entry.getValue());

}

2、在for-each循環(huán)中遍歷keys或values。

如果只需要map中的鍵或者值,你可以通過(guò)keySet或values來(lái)實(shí)現(xiàn)遍歷,而不是用entrySet。

MapInteger, Integer map = new?HashMapInteger, Integer();

for?(Integer key : map.keySet()) {

System.out.println("Key = "?+ key);

}

for?(Integer value : map.values()) {

System.out.println("Value = "?+ value);

}

該方法比entrySet遍歷在性能上稍好(快了10%),而且代碼更加干凈。

3、使用Iterator遍歷

使用泛型:

MapInteger, Integer map = new?HashMapInteger, Integer();

IteratorMap.EntryInteger, Integer entries = map.entrySet().iterator();

while?(entries.hasNext()) {

Map.EntryInteger, Integer entry = entries.next();

System.out.println("Key = "?+ entry.getKey() + ", Value = "?+ entry.getValue());

}

不使用泛型:

Map map = new?HashMap();

Iterator entries = map.entrySet().iterator();

while?(entries.hasNext()) {

Map.Entry entry = (Map.Entry) entries.next();

Integer key = (Integer)entry.getKey();

Integer value = (Integer)entry.getValue();

System.out.println("Key = "?+ key + ", Value = "?+ value);

}

4、通過(guò)鍵找值遍歷(效率低)

MapInteger, Integer map = new?HashMapInteger, Integer();

for?(Integer key : map.keySet()) {

Integer value = map.get(key);

System.out.println("Key = "?+ key + ", Value = "?+ value);

}

假設(shè)Map中的鍵值對(duì)為1=11,2=22,3=33,現(xiàn)用方法1來(lái)遍歷Map代碼和調(diào)試結(jié)果如下:

擴(kuò)展資料:

1、HashMap的重要參數(shù)

HashMap 的實(shí)例有兩個(gè)參數(shù)影響其性能:初始容量 和加載因子。容量是哈希表中桶的數(shù)量,初始容量只是哈希表在創(chuàng)建時(shí)的容量。

加載因子 是哈希表在其容量自動(dòng)增加之前可以達(dá)到多滿的一種尺度。當(dāng)哈希表中的條目數(shù)超出了加載因子與當(dāng)前容量的乘積時(shí),則要對(duì)該哈希表進(jìn)行 rehash 操作(即重建內(nèi)部數(shù)據(jù)結(jié)構(gòu)),從而哈希表將具有大約兩倍的桶數(shù)。

在Java編程語(yǔ)言中,加載因子默認(rèn)值為0.75,默認(rèn)哈希表元為101。

2、HashMap的同步機(jī)制

注意,此實(shí)現(xiàn)不是同步的。 如果多個(gè)線程同時(shí)訪問(wèn)一個(gè)哈希映射,而其中至少一個(gè)線程從結(jié)構(gòu)上修改了該映射,則它必須保持外部同步。

(結(jié)構(gòu)上的修改是指添加或刪除一個(gè)或多個(gè)映射關(guān)系的任何操作;以防止對(duì)映射進(jìn)行意外的非同步訪問(wèn),如下:

Map m = Collections.synchronizedMap(new HashMap(...));

參考資料:百度百科-Hashmap

java遍歷map幾種簡(jiǎn)單方法

代碼如下:

import?java.util.HashMap;

import?java.util.Map;

public?class?App?{

public?static?void?main(String[]?args)?{

MapString,?Object?map?=?new?HashMap();

map.put("Name",?"Barry");

map.put("Gender",?"Male");

map.put("Age",?25);

//?第一種遍歷方式

for?(Map.EntryString,?Object?entry?:?map.entrySet())?{

System.out.println(entry.getKey()?+?"?=?"?+?entry.getValue());

}

//?第二種遍歷方式

map.forEach((key,?value)?-?{

System.out.println(key?+?"?=?"?+?value);

});

//?通過(guò)遍歷?key,然后再獲取?value

for?(String?key?:?map.keySet())?{

System.out.println(key?+?"?=?"?+?map.get(key));

}

//?單獨(dú)遍歷?values

for?(Object?value?:?map.values())?{

System.out.println(value);

}

}

}


網(wǎng)站題目:java中map遍歷代碼 java如何遍歷map
瀏覽路徑:http://weahome.cn/article/hijcie.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部