java
package com.collection.Demo09;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/**
* HashMap集合遍历的三种方式
*/
public class Test06 {
public static void main(String[] args) {
HashMap<String, String> hashMap = new HashMap<>();
hashMap.put("mayikt01", "zhangsan");
hashMap.put("mayikt02", "lisi");
hashMap.put("mayikt03", "wangwu");
/**
* 方式1
* 思路分析:
* 1.先获取到 HashMap 中所有的 键值
* 2.调用get方法 获取对应的键的value值
*/
Set<String> keys = hashMap.keySet();
for (String key : keys) {
// System.out.println(key);
String value = hashMap.get(key);
System.out.println(key + "=" + value);
}
//优化
for (String key : hashMap.keySet()) {
System.out.println(key + "=" + hashMap.get(key));
}
/**
* 方式2: 遍历HashMap集合 entrySet() map集合中 键值对 封装 通过 entry对象
*/
Set<Map.Entry<String, String>> entries = hashMap.entrySet();
for (Map.Entry<String, String> entry : entries) {
System.out.println(entry);//与下一行等价
// System.out.println(entry.getKey()+"="+entry.getValue());
}
//优化
for (Map.Entry<String, String> entry : hashMap.entrySet()) {
System.out.println(entry);
}
/**
* 方式3:使用迭代器,不怎么使用,代码量大
*/
System.out.println("方式3:使用迭代器");
Set<Map.Entry<String, String>> entries1 = hashMap.entrySet();
Iterator<Map.Entry<String, String>> iterator = entries1.iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
System.out.println(entry);
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
}
下一篇文章:HashMap集合存入学生对象