导航:首页 > 编程语言 > 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的迭代器相关的资料

热点内容
spring如何添加app 浏览:664
python循环import 浏览:552
怎样把js代码加密 浏览:800
frp服务器百度云 浏览:792
12306算法 浏览:630
单片机驱动小马达 浏览:100
pythoncookbook27 浏览:518
c的指针和python 浏览:186
python写sftp 浏览:957
读文pdf 浏览:507
pythonnumpy内积 浏览:782
linux硬盘模式 浏览:15
怎么查安卓的空间 浏览:589
linux命令复制命令 浏览:115
劳动法里面有没有带工资算法的 浏览:456
如何在u盘里拷解压软件 浏览:689
oracle数据库登陆命令 浏览:616
python自动化运维之路 浏览:402
eclipsejava教程下载 浏览:989
tita搜索app怎么配置 浏览:265