ITPub博客

首页 > IT职业 > IT图书 > java 遍历 Map的四种方法

java 遍历 Map的四种方法

IT图书 作者:jmctian 时间:2021-09-09 09:03:42 0 删除 编辑
public static void main(String[] args) {

  Map map = new HashMap();
  map.put("1", "value1");
  map.put("2", "value2");
  map.put("3", "value3");

  //第一种:普遍使用,二次取值
  System.out.println("通过Map.keySet遍历key和value:");
  for (String key : map.keySet()) {
   System.out.println("key= "+ key + " and value= " + map.get(key));
  }

  //第二种
  System.out.println("通过Map.entrySet使用iterator遍历key和value:");
  Iterator> it = map.entrySet().iterator();
  while (it.hasNext()) {
   Map.Entry entry = it.next();
   System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
  }

  //第三种:推荐,尤其是容量大时
  System.out.println("通过Map.entrySet遍历key和value");
  for (Map.Entry entry : map.entrySet()) {
   System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
  }

  //第四种
  System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
  for (String v : map.values()) {
   System.out.println("value= " + v);
  }
 }

Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。

这里,java.util.Map也用作命名空间。 条目不属于全局范围,这意味着有许多其他实体是条目,不需要Map的条目。 这表示Entry与Map相关的条目。

因为接口不能被实例化,所以内部接口只有在是静态的时才有意义。 因此,默认inter interface是静态的,无论你手动添加静态还是不是。

图片描述

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2963/viewspace-2799021/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-13

  • 博文量
    0
  • 访问量
    429