map的遍历方式
初始化集合
private static Map<String, String> initMap() {
Map<String, String> map = new HashMap<>();
map.put("张三", "a");
map.put("李四", "b");
map.put("王五", "c");
map.put("孙悟空", "d");
return map;
}
forEach遍历
1.1、通过forEach遍历map entrySet
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] args) {
Map<String, String> map = initMap();
fun1(map);
}
private static Map<String, String> initMap() {
Map<String, String> map = new HashMap<>();
map.put("张三", "a");
map.put("李四", "b");
map.put("王五", "c");
map.put("孙悟空", "d");
return map;
}
private static void fun1(Map<String, String> map) {
System.out.println("----forEach-entrySet遍历----");
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("Key = " + entry.getKey() + " Value = " + entry.getValue());
}
}
}
----forEach-entrySet遍历----
Key = 李四 Value = b
Key = 张三 Value = a
Key = 王五 Value = c
Key = 孙悟空 Value = d
1.2、forEach遍历keyValues
public class Test {
public static void main(String[] args) {
Map<String, String> map = initMap();
fun2(map);
}
private static Map<String, String> initMap() {
Map<String, String> map = new HashMap<>();
map.put("张三", "a");
map.put("李四", "b");
map.put("王五", "c");
map.put("孙悟空", "d");
return map;
}
private static void fun2(Map<String, String> map){
System.out.println("----forEach-keySet遍历----");
for (String keyName : map.keySet()){
System.out.println(keyName);
}
}
}
----forEach-keySet遍历----
李四
张三
王五
孙悟空
1.3 forEach values遍历
private static void fun3(Map<String, String> map){
System.out.println("----forEach-Values遍历----");
for (String valueName : map.values()){
System.out.println(valueName);
}
}
----forEach-Values遍历----
b
a
c
d
Iterator遍历
2.1 Iterator entry遍历
private static void fun4(Map<String, String> map) {
System.out.println("----Iterator entry遍历----");
Iterator iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = (Map.Entry<String, String>) iterator.next();
System.out.println(entry.getKey() + "==>" + entry.getValue());
}
}
----Iterator entry遍历----
李四==>b
张三==>a
王五==>c
孙悟空==>d
2.2 Tterator key遍历
private static void fun5(Map<String, String> map) {
System.out.println("----Iterator key遍历----");
String key;
Iterator iterator = map.keySet().iterator();
while (iterator.hasNext()) {
key = (String) iterator.next();
String value = map.get(key);
System.out.println(key + "==>" + value);
}
}
----Iterator key遍历----
李四==>b
张三==>a
王五==>c
孙悟空==>d
2.3 Iterator value遍历
private static void fun6(Map<String, String> map) {
System.out.println("----Iterator value遍历----");
String value;
Iterator iterator = map.values().iterator();
while (iterator.hasNext()) {
value = (String) iterator.next();
System.out.println( "value :==>" + value);
}
}
----Iterator value遍历----
value :==>b
value :==>a
value :==>c
value :==>d
lambda遍历
private static void fun6(Map<String, String> map) {
System.out.println("lamdba 遍历");
map.forEach((k, v) -> {
System.out.println("key: " + k + " value: " + v);
});
}
lamdba 遍历
key: 李四 value: b
key: 张三 value: a
key: 王五 value: c
key: 孙悟空 value: d