keySet()遍历
package com.itheima.demo01.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/*
Map集合的第一种遍历方式:通过键找值
public Set<K> keySet(): 获取Map集合中所有的键,存储到Set集合中。
实现步骤:
1.使用Map集合中的方法keySet(),把Map集合中所有的key取出来,存储到一个Set集合中
2.遍历set集合,获取Map集合中的每一个key
3.通过Map集合中的方法get(key),通过key找到value
*/
public class Demo02KeySet {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("licheng", 123);
map.put("lenggeng", 111);
map.put("yangguo", 12);
map.put("yinzhiping", 33);
Set<String> set = map.keySet();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String key = it.next();
System.out.println(key + " " + map.get(key));
}
System.out.println("---------------------------------------");
for (String key : set
) {
System.out.println(key + " " + map.get(key));
}
}
}
entrySet()遍历
package com.itheima.demo01.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/*
Map集合遍历的第二种方式
Map集合中的方法:
public Set<Map.Entry<K,V>> entrySet(): 获取到Map集合中所有的键值对对象的集合(Set集合)。
实现步骤:
1.使用Map集合中的方法entrySet(),把Map集合中多的Entry对象取出来,存储到一个Set集合中
2.使用Set集合,获取每个Entry对象
3.使用Entry对象中的方法getKey()和getValue()获取键与值
*/
public class Demo03EntrySet {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("licheng", 123);
map.put("lenggeng", 111);
map.put("yangguo", 12);
map.put("yinzhiping", 33);
//1.使用Map集合中的方法entrySet(),把Map集合中多的Entry对象取出来,存储到一个Set集合中
Set<Map.Entry<String, Integer>> set = map.entrySet();
//2.使用Set集合,获取每个Entry对象
Iterator<Map.Entry<String, Integer>> it = set.iterator();
while (it.hasNext()) {
//3.使用Entry对象中的方法getKey()和getValue()获取键与值
Map.Entry<String, Integer> entry = it.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key + " " + value);
}
System.out.println("--------------------------------");
for (Map.Entry<String, Integer> entry : set) {
System.out.println(entry.getKey() + " " + entry.getValue());
}
}
}