import java.util.*;public class HashMapTest
{
public static void main(String[] args)
{
HashMap map = new HashMap();
String a = null ,b = null;
map.put(a, new Boolean(false));
map.put(b, new Boolean(true));
System.out.println(map.get(a).toString());
System.out.println(map.get(b).toString());
}
}不明白  为什么 2个都输出  true  高手 给我解决一下了

解决方案 »

  1.   

    两个都是null,当然输出一个,你的hashmap里就存了一个pair而已
      

  2.   


    import java.util.*;public class Class1
    {
    public static void main(String[] args)
    {
    HashMap map = new HashMap();
    String a ="a" ,b = "b";
    map.put(a, new Boolean(false));
    map.put(b, new Boolean(true));
    System.out.println(map.get(a).toString());
    System.out.println(map.get(b).toString());
    }
    }
      

  3.   

    map存储的是key/value pair,第一个key为null,value为false,第二个key依然为null,map会直接覆盖掉前面的false,所以输出的value为true