Java实现Map集合遍历的四种常见方式与用法分析
本文实例讲述了Java实现Map集合遍历的四种常见方式与用法。分享给大家供大家参考,具体如下:
~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值
1.无非就是通过map.keySet()获取到值,然后根据键获取到值
for(Strings:map.keySet()){
System.out.println("key:"+s+"value:"+map.get(s));
}
2.通过Map.Entry(String,String)获取,然后使用entry.getKey()获取到键,通过entry.getValue()获取到值
for(Map.Entryentry:map.entrySet()){ System.out.println("键key:"+entry.getKey()+"值value:"+entry.getValue()); }
3.其中通过Iterator也是为了最终获得entry,所以理解其用法,可以很好的使用和掌握
packagecom.bie;
importjava.util.HashMap;
importjava.util.Iterator;
importjava.util.Map;
/**
*@authorBieHongLi
*@version创建时间:2017年2月25日下午8:58:54
*
*/
publicclassMapTest01{
publicstaticvoidmain(String[]args){
Mapmap=newHashMap();
map.put("张三1","男");
map.put("张三2","男");
map.put("张三3","男");
map.put("张三4","男");
map.put("张三5","男");
//第一种遍历map的方法,通过加强for循环map.keySet(),然后通过键key获取到value值
for(Strings:map.keySet()){
System.out.println("key:"+s+"value:"+map.get(s));
}
System.out.println("====================================");
//第二种只遍历键或者值,通过加强for循环
for(Strings1:map.keySet()){//遍历map的键
System.out.println("键key:"+s1);
}
for(Strings2:map.values()){//遍历map的值
System.out.println("值value:"+s2);
}
System.out.println("====================================");
//第三种方式Map.Entry的加强for循环遍历输出键key和值value
for(Map.Entryentry:map.entrySet()){
System.out.println("键key:"+entry.getKey()+"值value:"+entry.getValue());
}
System.out.println("====================================");
//第四种Iterator遍历获取,然后获取到Map.Entry,再得到getKey()和getValue()
Iterator>it=map.entrySet().iterator();
while(it.hasNext()){
Map.Entryentry=it.next();
System.out.println("键key:"+entry.getKey()+"value:"+entry.getValue());
}
System.out.println("====================================");
}
}
4.Map的一些常用的知识点,和取值的变形形式,都需要掌握和了解
packagecom.bie;
importjava.util.Collection;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Set;
/**
*@authorBieHongLi
*@version创建时间:2017年2月26日上午11:29:59
*
*/
publicclassMapTest02{
publicstaticvoidmain(String[]args){
//1:key,value都是object类型的
//2:key必须是唯一的,不唯一,那么后面的value会把前面的value覆盖
//3:对于HashMap,key可以为空
//4:value可以为空,也可以为空
//5:HashTable的key和value不能为空
//6:properties的key和value必须为String类型的
Mapmap=newHashMap<>();
map.put("null","thisisnull1");
map.put("null","thisisnull2");
System.out.println(map.size());
System.out.println(map.get(null));
System.out.println("=============================");
//循环显示map类型的key以及对应的value
//三个集合,key的集合,value的集合,键值对的集合
Setkeys=map.keySet();
for(Strings:keys){
System.out.println(s);
}
System.out.println("=============================");
Collectionvalues=map.values();//值的集合
System.out.println(values);
System.out.println("=============================");
Set>entrys=map.entrySet();//键值对的集合
for(Map.Entryentry:entrys){
System.out.println(entry.getKey()+""+entry.getValue());
}
}
}
更多java相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。