当前位置:   article > 正文

遍历HashMap的几种方式总结_hashmap 遍历

hashmap 遍历

1.使用Iterator遍历HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
    Map.Entry<String, String> entry = iterator.next();
    String key = entry.getKey();
    String value = entry.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

2.使用forEach遍历HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
map.forEach((key, value) -> {
    // 打印key和value
    System.out.println(key + " : " + value);
});


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

3.使用for-each循环遍历HashMap的keySet或values

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap的keySet
for (String key : map.keySet()) {
    String value = map.get(key);
    // 打印key和value
    System.out.println(key + " : " + value);
}

// 遍历HashMap的values
for (String value : map.values()) {
    // 打印value
    System.out.println(value);
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4.使用Stream API遍历HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 遍历HashMap
map.entrySet().stream().forEach(entry -> {
    String key = entry.getKey();
    String value = entry.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

5.使用键-值对数组遍历HashMap

HashMap<String, String> map = new HashMap<>();
// 添加元素
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");

// 获取键-值对数组
Object[] entries = map.entrySet().toArray();
for (Object entry : entries) {
    Map.Entry<String, String> e = (Map.Entry<String, String>) entry;
    String key = e.getKey();
    String value = e.getValue();
    // 打印key和value
    System.out.println(key + " : " + value);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

在Java开发中,使用迭代器(Iterator)遍历HashMap的方式是最常见的。因为迭代器不需要将整个HashMap加载到内存中,它只会在需要时才加载下一个元素,因此可以避免内存溢出的问题。此外,迭代器提供了一些方便的方法,例如remove()方法可以删除当前迭代的元素。

除此之外,使用for-each循环遍历HashMap的keySet或values也是一个常见的方式。这种方式的优点是简单易懂,代码量少,适用于只需要访问键或值的场景。

其他的方式虽然也可以使用,但是在实际开发中相对较少使用。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/564614
推荐阅读
相关标签
  

闽ICP备14008679号