手机版
你好,游客 登录 注册
背景:
阅读新闻

Map集合的4种遍历方式

[日期:2019-11-22] 来源:cnblogs.com/yanggb  作者: 杨冠标 [字体: ]

这里来总结下Map集合的4种遍历方式。

先来初始化一个Map。

Map<Integer, String> map = new HashMap<>();
map.put(1, "a");
map.put(2, "b");
map.put(3, "c");
map.put(4, "c");

第一种遍历方式:通过【Map.keyset()】使用【foreach】遍历key和value。

Set<Integer> set = map.keySet(); // 得到所有key的集合
for (Integer key : set) {
    String value = map.get(key);
    System.out.println(key + " " + value);
}

也可以简写为(省略变量):

for (Integer key : map.keyset()) {
    String value = map.get(key);
    System.out.println(key + " " + value);
}

第二种遍历方式:通过【Map.entrySet()】使用【iterator】遍历key和value。

Iterator<Map.Entry<Integer, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry<Integer, String> entry = it.next();
    System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}

第三种遍历方式:通过【Map.entrySet()】使用【foreach】遍历key和value。

for (Map.Entry<Integer, String> entry : map.entrySet()) {
    // Map.entry<Integer, String> 映射项(键-值对) 有几个方法:用上面的名字entry
    // entry.getKey() ;entry.getValue(); entry.setValue();
    // map.entrySet() 返回此映射中包含的映射关系的 Set视图。
    System.out.println("key= " + entry.getKey() + " and value= "
+ entry.getValue());
}

这种遍历方式据说性能最好,尤其是数据量大的场景下。

第四种遍历方式:通过【Map.values()】使用【foreach】遍历value。

for (String v : map.values()) {
    System.out.println("value= " + v);
}

但是这种方式不能遍历key,只能在不需要遍历key的场景下使用。

linux
相关资讯       Map集合 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款