遍历HashMap的五种方式

遍历HashMap的五种方式:1.使用 Iterator 遍历 HashMap EntrySet。2.使用 Iterator 遍历 HashMap KeySet。3.使用 For-each 循环迭代 HashMap。5.使用 Stream API 遍历 HashMap。4.使用 Lambda 表达式遍历 HashMap。
class Solution{
public static void main(String[] args) {
Map<Integer,String>map=new HashMap<>();
map.put(1,“JAVA”);
map.put(2,“C++”);
map.put(3,“Python”);
map.put(4,“GO”);
map.put(5,“C++”);
map.put(6,“C#”);
map.put(7,“C”);
map.put(8,“Python3”);
map.put(9,“JavaScript”);
}
}
首先向哈希表中放入元素。

1.使用 Iterator 遍历 HashMap EntrySet

// 获取对映射条目的引用的唯一方法是从该集合视图的迭代器。
// 这些Map.Entry对象仅在迭代期间有效
// 更正式地,如果在迭代器返回条目之后已经修改了背景映射,则映射条目的行为是未定义的,除非通过映射条目上的setValue操作。
Iterator<Map.Entry<Integer,String>>iterator=map.entrySet().iterator();
while (iterator.hasNext()){
Map.Entry<Integer,String>entry= iterator.next();
System.out.println(entry);
}
运行结果:
在这里插入图片描述
2.使用 Iterator 遍历 HashMap KeySet
Iteratoriterator=map.keySet().iterator();
while (iterator.hasNext()){
Integer key=iterator.next();
System.out.println(key);
System.out.println(map.get(key));
}
运行结果:
在这里插入图片描述

3.使用 For-each 循环迭代 HashMap

    for(Map.Entry<Integer,String>entry:map.entrySet()){
        System.out.println(entry);
    }

在这里插入图片描述

4.使用 Lambda 表达式遍历 HashMap

    map.forEach((key,value)->{
        System.out.println(key);
        System.out.println(value);
    });

在这里插入图片描述

5.使用 Stream API 遍历 HashMap

    map.entrySet().stream().forEach((entry) -> {
        System.out.println(entry);
        System.out.println(entry.getKey());
        System.out.println(entry.getValue());
    });

运行结果:

在这里插入图片描述