1.通过Map.KeySet遍历key和value
for (String key : map.keySet()) {
String value = map.get(key);
System.out.println("key: " + key + " value: " + value);
}
2.通过Map.entrySet使用iterator遍历key和value
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
System.out.println("key: " + entry.getKey() + " value: " + entry.getValue());
}
3.通过Map.entrySet遍历key和value
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key: " + entry.getKey() + " value: " + entry.getValue());
}
4.通过Map.values()遍历value,无法遍历key
for (String value : map.values()) {
System.out.println(" value: " + value);
}
5.通过Map.keySet()key,无法遍历value
for (String key : map.keySet()) {
System.out.println(" key: " + key);
}
完整代码
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* Map集合遍历的五种方式
*/
public class MapIterator {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("a", "123");
map.put("b", "245");
map.put("c", "456");
map.put("d", "789");
System.out.println("第一种:通过Map.KeySet遍历key和value");
System.out.println("------------------------------------");
for (String key : map.keySet()) {
String value = map.get(key);
System.out.println("key: " + key + " value: " + value);
}
System.out.println("------------------------------------");
System.out.println("第二种:通过Map.entrySet使用iterator遍历key和value");
System.out.println("------------------------------------");
Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
System.out.println("key: " + entry.getKey() + " value: " + entry.getValue());
}
System.out.println("------------------------------------");
System.out.println("第三种:通过Map.entrySet遍历key和value");
System.out.println("------------------------------------");
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key: " + entry.getKey() + " value: " + entry.getValue());
}
System.out.println("------------------------------------");
System.out.println("第四种:通过Map.values()遍历value,无法遍历key");
System.out.println("------------------------------------");
for (String value : map.values()) {
System.out.println(" value: " + value);
}
System.out.println("------------------------------------");
System.out.println("第五种:通过Map.keySet()key,无法遍历value");
System.out.println("------------------------------------");
for (String key : map.keySet()) {
System.out.println(" key: " + key);
}
System.out.println("------------------------------------");
}
}