Java实现多种方式遍历Map集合

在Java软件开发工作中,最常用到的两个集合就是List和Map了,虽然在面试的时候你经常问道ArrayList和LinkedList的区别,HashMap和Hashtable的区别,如果想面试成功你也必须说出来一两点,但是我还真没有用过LinkedList和Hashtable(可能真的是我工作任务的限制吧)。但是不管怎么说,List和Map都是最常用的,作为一个技术人员,你必须要明白,深刻理解其中的两到三种方法,也要明白他们的使用场景。好吧,废话不多说,开始我们今天的经验分享吧!

现在开始进入今天的正题,使用Java代码遍历Map集合的方法汇总。

1、创建一个Java类,命名为MapTest

2、创建一个Map集合,并定义类型和put值:

public static void main(String[] args) {
      HashMap<Integer, String> map = new HashMap<Integer, String>();
      map.put(1, "李逍遥");
      map.put(2, "赵灵儿");
      map.put(3, "林月如");
      map.put(4, "徐长卿");
      map.put(5, "唐雪见");
      
      //firstMethod(map);
      //secondMethod(map);
      //thirdMethod(map);
      //fourthMethod(map);
   }


第一种方法和运行结构:

private static void firstMethod(HashMap<Integer, String> map){
      System.out.println("foreach循环进行遍历");
      for (Integer key : map.keySet()) {
         System.out.println("key:"+key+"对应的值为:"+map.get(key));
      }
   }


第二种方法和运行结果:

public static void secondMethod(HashMap<Integer, String> map){
      System.out.println("通过Iterator遍历获取");
      Iterator<Entry<Integer, String>> inte = map.entrySet().iterator();
      while(inte.hasNext()){
         Map.Entry<Integer, String> m = inte.next();
         System.out.println("key:"+m.getKey()+"对应的值为:"+m.getValue());
      }
   }


第三种方法和运行结果:

public static void thirdMethod(HashMap<Integer, String> map){
      System.out.println("第三种方式:map.entrySet()");
      for (Entry<Integer, String> str : map.entrySet()) {
         System.out.println("key:"+str.getKey()+"对应的值为:"+str.getValue());
      }
   }


第四种方法和运行结果:

public static void fourthMethod(HashMap<Integer, String> map) {
System.out.println("通过map.values()循环遍历直接获取值");
for (String string : map.values()) {
System.out.println("map的值为:" + string);
}
}



不管是遍历Map还是List的,其本质都是获取对应的值,程序员在开发中可以根据开发场景适当的选择各种方法,但是理解其本质才是最主要的。我会在后期分享对List的遍历方法的总结,供大家参考,仅个人观点,有不足的地方欢迎支出,请继续关注我的分享。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值