導航:首頁 > 編程語言 > javamap的迭代器

javamap的迭代器

發布時間:2024-06-21 02:22:42

java Map 根據Map的值(value)取鍵(key)

java根據Map的值(value)取鍵(key) 的實現方法有4種,分別為:

(1)使用for循環遍歷

(2)使用Iterator迭代器

(3)使用KeySet迭代

(4)使用EnterySet迭代

下面為以上4種方法具體實現的代碼:

1、使用for循環遍歷

public static Object getKey(HashMap<Object,Object> map, String v) {

String key = "";

for (Map.Entry<String, Object> m :map.entrySet()) {

if (m.getValue().equals(v)) {

key = m.getKey();

}}

return key;

}

❷ Java中便歷Map的幾種方法

importjava.util.HashMap;
importjava.util.Iterator;
importjava.util.Map.Entry;

publicclassMapDemo{
publicstaticvoidmain(String[]args){
//准備好需要遍歷的Map
HashMap<String,Integer>map=newHashMap<String,Integer>();
map.put("Tom",85);
map.put("Jack",97);
test1(map);
test2(map);
test3(map);
test4(map);

}

//方法一:迭代器方式
//特點:效率高,速度快,但是代碼量多
publicstaticvoidtest1(HashMap<String,Integer>map){
Iterator<Entry<String,Integer>>it=map.entrySet().iterator();
while(it.hasNext()){
Entry<String,Integer>e=it.next();
System.out.println("name:"+e.getKey()+" score:"+e.getValue());
}
}

//方法二:map.entrySet()for循環
//特點:效率也較高,速度較快,且寫法比方法一簡單
publicstaticvoidtest2(HashMap<String,Integer>map){
for(Entry<String,Integer>e:map.entrySet()){
System.out.println("name:"+e.getKey()+" score:"+e.getValue());
}
}

//方法3map.keySetfor循環
// 特點:效率較慢
publicstaticvoidtest3(HashMap<String,Integer>map){
for(Stringkey:map.keySet()){
System.out.println("name:"+key+" score:"+map.get(key));
}
}

//方法四:forEach
//特點速度較慢,但是代碼少,簡潔;(需要Java8或以上版本的支持)
publicstaticvoidtest4(HashMap<String,Integer>map){
map.forEach((k,v)->System.out.println("name:"+k+" score:"+v));
}
}

四種方法之間的效率比較

(test1≈test2)>(test3≈test4)

推薦: 數據量特別大的時候 使用方法1: 代碼長,但是效率高

數據量較少的, 那麼使用方法4: 代碼簡潔而優雅~

閱讀全文

與javamap的迭代器相關的資料

熱點內容
什麼是適合自己的app 瀏覽:451
雲伺服器怎麼補漏洞 瀏覽:176
如何看自己的安卓是什麼等級 瀏覽:633
被丁磊挖走的程序員 瀏覽:19
gsk980ta編程 瀏覽:507
單片機離線 瀏覽:84
解壓助眠敲擊外國長指甲 瀏覽:421
3次元編程 瀏覽:803
夫妻傳送英文命令 瀏覽:316
程序員題代做 瀏覽:950
戴爾伺服器怎麼擴大內存 瀏覽:641
解壓包密碼消失 瀏覽:135
昆侖通態觸摸屏用戶窗加密 瀏覽:564
農信app怎麼看日額 瀏覽:865
iphone備忘錄包含視頻無法加密 瀏覽:283
抖音快手紅包源碼 瀏覽:137
程序員資源分析 瀏覽:586
linux交換分區大小 瀏覽:922
mt怎麼編譯 瀏覽:337
qq郵箱打開pdf 瀏覽:461