写在前面:前段时间找工作,遇到一道面试题,要求遍历取出Map集合的键和值,没有要求使用多种方法,做完面试题就想着整理一下,让自己多多积累。
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Base2 {
/**
*
* @param args
*/
public static void main(String[] args) {
Map<String, Object> map = new HashMap<>();
map.put("1", "张三");
map.put("2", "李四");
map.put("3", "王五");
//方法一:使用keySet()方法将key放入set中
Set<String> set = map.keySet();//先使用set得到map的所有key
Iterator<String> it = set.iterator();//构造set的迭代器
while (it.hasNext()) {
String key = it.next();
Object value = map.get(key);
System.out.println("key" + key + "value" + value);
}
//方法二 : 用增强for循环来代替 iterator
Set<String> set1 = map.keySet();
for (String key1 : set1) {
Object value1 = map.get(key1);
System.out.println("key" + key1 + "value" + value1);
//方法三 :将map的键值对用entrySet方法取出,再放入到set当中
Set<Map.Entry<String, Object>> map1 = map.entrySet();
for (Map.Entry<String, Object> maps :
map1) {
String key2 = maps.getKey();
Object Value2 = maps.getValue();
System.out.println("key" + key2 + "value" + Value2);
}
//方法四
Iterator iterator = map.entrySet().iterator();
while (iterator.hasNext()){
Map.Entry maps = ( Map.Entry)iterator.next();
Object key = maps.getKey();
Object value = maps.getValue();
System.out.println("key" + key + "value" + value);
}
}
}}