建立一个map,并存入数据
Map<Integer,Integer> map = new HashMap<>();
第一种遍历方式,通过keySet()
for(Integer key:map.keySet()){
System.out.println("Key: " + key + ", Value: " + map.get(key));
}
第二种方式,使用迭代器,当有删除某些key-value的需求时候,使用这种
Iterator<Map.Entry<Integer, Integer>> iterator = map.entrySet().iterator();
while(iterator.hasNext()) {
Map.Entry<Integer, Inteegr> entry = iterator.next();
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
第三种,使用entrySet(),当容量大的时候推荐使用
for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
第四种遍历方式:通过遍历 Map 的 values,只能遍历 Value,获取不到对应的 Key
for (int value : map.values()) {
System.out.println("Value: " + value);
}
第五种遍历方式(JDK 1.8支持的 Lambda 表达式),如果要进行传值进去的话,要使用final
final int num = 5;
map.forEach((key, value) -> {
value += num;
System.out.println("Key: " + key + ", Value: " + value);
});