Java实现Map集合遍历的四种常见方式与用法分析
程序员文章站
2023-12-20 16:58:58
本文实例讲述了java实现map集合遍历的四种常见方式与用法。分享给大家供大家参考,具体如下:
~map集合是键值对形式存储值的,所以遍历map集合无非就是获取键和值,根...
本文实例讲述了java实现map集合遍历的四种常见方式与用法。分享给大家供大家参考,具体如下:
~map集合是键值对形式存储值的,所以遍历map集合无非就是获取键和值,根据实际需求,进行获取键和值
1. 无非就是通过map.keyset()
获取到值,然后根据键获取到值
for(string s:map.keyset()){ system.out.println("key : "+s+" value : "+map.get(s)); }
2. 通过map.entry(string,string)
获取,然后使用entry.getkey()
获取到键,通过entry.getvalue()
获取到值
for(map.entry<string, string> entry : map.entryset()){ system.out.println("键 key :"+entry.getkey()+" 值value :"+entry.getvalue()); }
3. 其中通过iterator也是为了最终获得entry,所以理解其用法,可以很好的使用和掌握
package com.bie; import java.util.hashmap; import java.util.iterator; import java.util.map; /** * @author biehongli * @version 创建时间:2017年2月25日 下午8:58:54 * */ public class maptest01 { public static void main(string[] args) { map<string, string> map=new hashmap<string, string>(); map.put("张三1", "男"); map.put("张三2", "男"); map.put("张三3", "男"); map.put("张三4", "男"); map.put("张三5", "男"); //第一种遍历map的方法,通过加强for循环map.keyset(),然后通过键key获取到value值 for(string s:map.keyset()){ system.out.println("key : "+s+" value : "+map.get(s)); } system.out.println("===================================="); //第二种只遍历键或者值,通过加强for循环 for(string s1:map.keyset()){//遍历map的键 system.out.println("键key :"+s1); } for(string s2:map.values()){//遍历map的值 system.out.println("值value :"+s2); } system.out.println("===================================="); //第三种方式map.entry<string, string>的加强for循环遍历输出键key和值value for(map.entry<string, string> entry : map.entryset()){ system.out.println("键 key :"+entry.getkey()+" 值value :"+entry.getvalue()); } system.out.println("===================================="); //第四种iterator遍历获取,然后获取到map.entry<string, string>,再得到getkey()和getvalue() iterator<map.entry<string, string>> it=map.entryset().iterator(); while(it.hasnext()){ map.entry<string, string> entry=it.next(); system.out.println("键key :"+entry.getkey()+" value :"+entry.getvalue()); } system.out.println("===================================="); } }
4. map的一些常用的知识点,和取值的变形形式,都需要掌握和了解
package com.bie; import java.util.collection; import java.util.hashmap; import java.util.map; import java.util.set; /** * @author biehongli * @version 创建时间:2017年2月26日 上午11:29:59 * */ public class maptest02 { public static void main(string[] args) { //1:key,value都是object类型的 //2:key必须是唯一的,不唯一,那么后面的value会把前面的value覆盖 //3:对于hashmap,key可以为空 //4:value可以为空,也可以为空 //5:hashtable的key和value不能为空 //6:properties的key和value必须为string类型的 map<string , string> map=new hashmap<>(); map.put("null", "this is null 1"); map.put("null", "this is null 2"); system.out.println(map.size()); system.out.println(map.get(null)); system.out.println("============================="); //循环显示map类型的key以及对应的value //三个集合,key的集合,value的集合,键值对的集合 set<string> keys=map.keyset(); for(string s:keys){ system.out.println(s); } system.out.println("============================="); collection<string> values=map.values();//值的集合 system.out.println(values); system.out.println("============================="); set<map.entry<string, string>> entrys=map.entryset();//键值对的集合 for(map.entry<string, string> entry:entrys){ system.out.println(entry.getkey()+" "+entry.getvalue()); } } }
更多java相关内容感兴趣的读者可查看本站专题:《java数据结构与算法教程》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。