1.使用entrySet()方法【推荐】
/*
* 使用hm.entrySet()返回一个Map.Entry<>对象的集合,使用增强for遍历这个集合
* */
for (Map.Entry<String, String> entry : hm.entrySet()) {
//Entry对象的getKey()方法获取对应key键
String key = entry.getKey();
//Entry对象的getValue()方法获取对应的值value
String value = entry.getValue();
}
2.直接使用values()方法获取所有value值组成的集合
/*
* 直接使用values()方法获取所有value值组成的集合
* */
for (String value : hm.values()) {
System.out.println(value);
}
3.使用keySet()方法和getValue方法
/*
* 使用map对象的keySet()方法获取所有key组成的集合,再利用get()方法获取对应的value值
* */
for (String key : hm.keySet()) {
String value = hm.get(key);
}
4.使用迭代器iterator
/*
* 使用迭代器iterator遍历集合,上面使用增强for遍历集合,当map的大小变化时会报错
* */
Iterator<Map.Entry<String, String>> it = hm.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String, String> entry = it.next();
String key = entry.getKey();
String value = entry.getValue();
//可对map进行增删操作
//hm.remove(key)
}
5.使用增强for的Lambda表达式
/*
* 使用增加for的Lambda表达式
* */
hm.forEach((key, value) -> {
System.out.println("key:" + key);
System.out.println("Value:" + value);
});
点击查看完整代码
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class mapIterator {
public static void main(String[] args) {
//创建HashMap
HashMap<String, String> hm = new HashMap<>();
/*
* 使用hm.entrySet()返回一个Map.Entry<>对象的集合,使用增强for遍历这个集合
* */
for (Map.Entry<String, String> entry : hm.entrySet()) {
//Entry对象的getKey()方法获取对应key键
String key = entry.getKey();
//Entry对象的getValue()方法获取对应的值value
String value = entry.getValue();
}
/*
* 直接使用values()方法获取所有value值组成的集合
* */
for (String value : hm.values()) {
System.out.println(value);
}
/*
* 使用map对象的keySet()方法获取所有key组成的集合,再利用get()方法获取对应的value值
* */
for (String key : hm.keySet()) {
String value = hm.get(key);
}
/*
* 使用迭代器iterator遍历集合,上面使用增强for遍历集合,当map的大小变化时会报错
* */
Iterator<Map.Entry<String, String>> it = hm.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String, String> entry = it.next();
String key = entry.getKey();
String value = entry.getValue();
//可对map进行增删操作
//hm.remove(key)
}
/*
* 使用增加for的Lambda表达式
* */
hm.forEach((key, value) -> {
System.out.println("key:" + key);
System.out.println("Value:" + value);
});
}
}