欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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程序设计有所帮助。

上一篇:

下一篇: