1、iterator输出Map集合
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class HashMapDemo {
public static void main(String[] args) {
Map<String,Integer>map=new HashMap<String, Integer>();//获取map接口实例
map.put("张三",20);//保存数据
map.put("李四",21);//保存数据
map.put("王五",22);//保存数据
Set<Map.Entry<String,Integer>> set=map.entrySet();//Map转换为Set
Iterator<Map.Entry<String,Integer>> iter=set.iterator();//获取Iterator
while (iter.hasNext()){ //迭代输出
Map.Entry<String,Integer> me=iter.next();//获取Map.Entry
System.out.println("姓名:"+me.getKey()+"\t年龄:"+me.getValue());//输出
}
}
}
运行结果:
姓名:李四 年龄:21
姓名:张三 年龄:20
姓名:王五 年龄:22
2、通过foreach循环输出
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/*
* foreach在进行迭代无法直接通过Map接口完成,
* 必须将Map转换为Set在可以在每次迭代后获取Map.Entry接口实例
* */
public class HashMapDemo {
public static void main(String[] args) {
Map<String,Integer>map=new HashMap<String, Integer>();//获取map接口实例
map.put("张三",20);//保存数据
map.put("李四",21);//保存数据
map.put("王五",22);//保存数据
Set<Map.Entry<String,Integer>> set=map.entrySet();//Map转换为Set
for(Map.Entry<String, Integer> entry:set){ //foreach迭代
System.out.println("姓名:"+entry.getKey()+"\t年龄:"+entry.getValue());
}
}
}
运行结果:
姓名:李四 年龄:21
姓名:张三 年龄:20
姓名:王五 年龄:22