最好的Java5種遍歷HashMap數(shù)據(jù)的寫法
通過EntrySet的迭代器遍歷
Iterator < Entry < Integer, String >> iterator = coursesMap.entrySet().iterator();
while (iterator.hasNext()) {
Entry < Integer, String > entry = iterator.next();
System.out.print(entry.getKey() + ". ");
System.out.println(entry.getValue());
}
輸出結(jié)果如下:
zzw:how_iterate_hashmap_in_java zzw$ java IterateHashMapExample 1
TIOBE Index for March 2020:
1. Java
2. C
3. Python
4. C++
5. C#
6. Visual Basic .NET
7. JavaScript
8. PHP
9. SQL
10. GO
通過KeySet的迭代器遍歷
Iterator < Integer > iterator = coursesMap.keySet().iterator();
while (iterator.hasNext()) {
Integer key = iterator.next();
System.out.print(key + ". ");
System.out.println(coursesMap.get(key));
}
輸出結(jié)果如下:
zzw:how_iterate_hashmap_in_java zzw$ java IterateHashMapExample 2
TIOBE Index for March 2020:
1. Java
2. C
3. Python
4. C++
5. C#
6. Visual Basic .NET
7. JavaScript
8. PHP
9. SQL
10. GO
通過ForEach循環(huán)遍歷
for (Map.Entry < Integer, String > entry: coursesMap.entrySet()) {
System.out.print(entry.getKey() + ". ");
System.out.println(entry.getValue());
}
輸出結(jié)果如下:
zzw:how_iterate_hashmap_in_java zzw$ java IterateHashMapExample 3
TIOBE Index for March 2020:
1. Java
2. C
3. Python
4. C++
5. C#
6. Visual Basic .NET
7. JavaScript
8. PHP
9. SQL
10. GO
通過Lambda表達式遍歷
coursesMap.forEach((key, value) -> {
System.out.print(key + ". ");
System.out.println(value);
});
輸出結(jié)果如下:
zzw:how_iterate_hashmap_in_java zzw$ java IterateHashMapExample 4
TIOBE Index for March 2020:
1. Java
2. C
3. Python
4. C++
5. C#
6. Visual Basic .NET
7. JavaScript
8. PHP
9. SQL
10. GO
通過Stream API遍歷
coursesMap.entrySet().stream().forEach((entry) -> {
System.out.print(entry.getKey() + ". ");
System.out.println(entry.getValue());
});
輸出結(jié)果如下:
zzw:how_iterate_hashmap_in_java zzw$ java IterateHashMapExample 5
TIOBE Index for March 2020:
1. Java
2. C
3. Python
4. C++
5. C#
6. Visual Basic .NET
7. JavaScript
8. PHP
9. SQL
10. GO
部分代碼截圖如下:
完整示例代碼在這里