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());
}
}
}