/*
Map的三种取出方式:
1.keySet-------取出原理:将map集合转成set集合,再通过迭代器取出
步骤:将所有的键值存入到set中,通过get方法获取键值所对应的value
2.entrySet-----取出原理:将集合中的映射关系存入到set集合中,这个关系的数据类型
就是Map.Entry
步骤:将键值的映射关系存入到set集合中,类型是Map.Entry
通过Map.Entry对象的getKey()与getValue()获取键与值
3.values()方法
*/
import java.util.*;
class MapDemo2
{
public static void main(String[] args)
{
Map<String,String> map = new HashMap<String,String>();
map.put("01","zhangsan1");
map.put("02","zhangsan2");
map.put("03","zhangsan3");
map.put("04","zhangsan4");
map.put("03","zhangsan5");//键值相同时,存入后存的值
//1.-----keySet方式下的取出方法
//将所有的键值存入到Set中,再通过取出键取出对应的值
Set<String> keyset = map.keySet();
Iterator<String> it = keyset.iterator();
while(it.hasNext())
{
String key = it.next();
System.out.println(key+keyset.get(key));
}
//此处也可用增强for循环,1.5版本以后
/*for(Iterator<String> it = keySet.iterator();it.haNext();)
{
System.out.println(it.next()+keyset.get(key));
}
*/
//2.------Entry方式下的取出方法
Set<Map.Entry<String,String>> entrySet = map.entrySet();
Iterator<Map.Entry<String,String>> it = entrySet.iterator();
while(it.hasNext())
{
Map.Entry<String,String> me = it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println("key:"+key+"value:"+value);
}
//3.-----values()
Collection<String> co = map.values();
for(Iterator<String> it = keySet.iterator();it.haNext();)
{
String s = (String)it.next();
System.out.println(s);
}
}
}
|