import java.util.*;
/**
* Map集合遍历的方法 * @author Administrator * */public class Test2 { public static void main(String[] args) { Map<String,String> map=new HashMap<String,String>(); /*Java 提供两种不同的类型: * 引用类型和原始类型(或内置类型)。 * Int是java的原始数据类型, * Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double*/ map.put("CN", "中国"); map.put("RU", "俄罗斯"); map.put("US", "美国"); /** * 获取指定key对应的value值 */ String value=map.get("CN"); System.out.println(value); /** * 第一种遍历 方式 遍历key 获取map中key的集合 */ Set<String> keys = map.keySet(); for (String key : keys) { System.out.println("Key值:"+key+" map值:"+map.get(key)); } /** * 第二种方法 用iterator遍历 配合while循环 */ Set<String> keySet = map.keySet(); Iterator<String> iterator = keySet.iterator(); //迭代器迭代的是key while(iterator.hasNext()){ //判断是否有下一个元素 //获取下一个元素 String key = iterator.next(); String values=map.get(key); System.out.println("key值"+key+" map值:"+values); } /** * 方法三:直接找value的值 */ Collection<String> values = map.values(); for (String valu : values) { System.out.println(valu); } /** * 方法四:同时遍历key和value key+value=entry */ Set<Entry<String, String>> entrySet = map.entrySet();//利用for增强
for (Entry<String, String> entry : entrySet) { System.out.println(entry.getKey() +"\t"+entry.getValue()); } /** * 方法五: 使用迭代器同时遍历key和valuekey+value=entry */ Set<Entry<String, String>> entrySet2 = map.entrySet(); Iterator<Entry<String, String>> iterator2 = entrySet2.iterator(); while(iterator2.hasNext()){ //判断是否有下一个元素 //获取单独的一项 Entry<String, String> next = iterator2.next(); System.out.println(next.getKey() +"\t"+next.getValue()); } }}