Java遍历Map的方式

第一种通过获取Map的keySet遍历。

  Map map=new HashMap();
        map.put("name","张三");
        map.put("address","安徽");
        map.put("hobby","钓鱼");
        Set set=map.keySet();
        for (Object key:set) {
            System.out.println(map.get(key));
        }

第二种通过获取Map的keySet 迭代或者通过Map的entrySet迭代(Map并不能直接通过迭代器迭代)

Iterator <String>iterator=keySet.iterator();
while(iterator.hasNext()){
    System.out.println(map.get(iterator.next()));
}
 Iterator <Entry<String,String>> iterator=entrySet.iterator();
               while (iterator.hasNext()){
                   Entry<String,String>entry=iterator.next();
                    每调用一次next()方法 游标向后移动一次
                   System.out.println(entry.getKey());
                   System.out.println(entry.getValue());

               }

 

第三种通过获取Map的entrySet遍历。

(Entryj接口是在Map接口中定义的,网上有些人不直接导包 写Map.Entry)

我是导包写的 import java.until.Map.Enter. 所以我的Entry前面没有Map点

 Set<Entry<String,String>>set= map.entrySet();
        for (Entry<String,String> entry:set) {
            System.out.println(entry.getKey()+"  "+entry.getValue());
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值