前言: map遍历分为map.keyset()和map.entryset() ,这两种可以直接通过迭代器遍历和增强for循环遍历,总共四种
直接上代码
/**
* Copyright: Copyright (c) 2018 Asiainfo-Linkage
*
* @ClassName: MapDemo.java
* @Description: 该类的功能描述
* @version: v1.0.0
* @author: chenx
* @date: 2018年10月16日 下午10:34:53
*
* Modification History:
* Date Author Version Description
*---------------------------------------------------------*
* 2018年10月16日 陈鑫 v1.0.0 修改原因
*/
package com.cx.list;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
/**
* Copyright: Copyright (c) 2018 Asiainfo-Linkage
*
* @ClassName: MapDemo.java
* @Description: 该类的功能描述
* @version: v1.0.0
* @author: chenx
* @date: 2018年10月16日 下午10:34:53
*
* Modification History:
* Date Author Version Description
*---------------------------------------------------------*
* 2018年10月16日 陈鑫 v1.0.0 修改原因
*/
public class MapDemo {
public static void main(String[] args){
Map<String,Object> map = new HashMap<String,Object>();
map.put("a", 1);
map.put("b", "22");
map.put("c", "33");
map.put("d", "555");
each1(map);
each2(map);
each3(map);
each4(map);
}
//第一种迭代器 通过map.keySet()遍历
public static void each1(Map<String,Object> map){
//1.调用map集合的方法keyset,所有的键存储到set集合中
Set<String> set = map.keySet();
//2.遍历set集合,获取出set集合中所有元素
Iterator<String> it = set.iterator();
while(it.hasNext()){
//接收key值
String key = it.next();
Object value = map.get(key);
System.out.println("Map集合中key: "+key+"====value: "+value);
}
}
//第二种增强for循环 通过map.keySet()遍历
public static void each2(Map<String,Object> map){
for(String key:map.keySet()){
Object value = map.get(key);
System.out.println("Map集合中key: "+key+"====value: "+value);
}
}
//第三种迭代器 通过map.entrySet()遍历
public static void each3(Map<String,Object> map){
//1.调用map集合方法entrySet()将集合中的映射关系对象存储到set集合
Set<Map.Entry<String,Object>> entrySet = map.entrySet();
//2.遍历set集合
Iterator<Map.Entry<String, Object>> it = entrySet.iterator();
while(it.hasNext()){
//3.获取出set集合的元素,是映射关系对象
//it.next获取的是什么对象,即Map.Entry对象
Map.Entry<String, Object> entry = it.next();
String key = entry.getKey();
Object value = entry.getValue();
System.out.println("Map集合中key: "+key+"====value: "+value);
}
}
//第四种增强for循环 通过map.entrySet()遍历
public static void each4(Map<String,Object> map){
for(Map.Entry<String, Object> entry:map.entrySet()){
String key = entry.getKey();
Object value = entry.getValue();
System.out.println("Map集合中key: "+key+"====value: "+value);
}
}
}