Java遍历Map的方式

hushuo
发布于 2021-1-7 13:51
浏览
0收藏

第一种通过获取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));
        }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.


第二种通过获取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());
 
               }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

 

第三种通过获取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());
        }
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

收藏
回复
举报
回复
    相关推荐