本帖最后由 jingzhouheima 于 2013-7-27 20:06 编辑
import java.util.*;
class HashMapDemo
{
public static void main(String[] args)
{
Map<String,String> map = new HashMap<String,String>();
sop("putPre:"+map.put("ha","12"));//最开始覆盖的是NULL
sop("putLast:"+map.put("ha","5"));//put返回的是被覆盖的那个值。
map.put("hei","15");
map.put("hk","14");
map.put("ll","12");
//sop(map.get("horizon"));//获取horizon所对应的值
//Collection<String> coll = map.values();
//sop("values():"+coll);//打印所有的键Key
sop(map);//打印的是键值对
Set<String> keySet = map.keySet();//获取所有的键
Iterator<String> it = keySet.iterator();
while(it.hasNext())
{
//sop("key:"+it.next());//------------------------------------------------------------------------------------------------------当只打印这句话的时候,会把map中的所有键值对打印出来
sop("key:"+it.next()+" values:"+map.get(it.next()));//------------------------------------------------------------------而当只打印这句话的时候,就只能打印最后的两个键值对。
}//------------------------------------------------------------------------------------------------------------------------------------为什么回事这样的情况?????
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
问题出现的状况:如图所示:
|
|