带有静态hashMap的空指针异常

时间:2011-12-27 04:06:24

标签: java hashmap nullpointerexception

 public class arraylst
 {
   static HashMap<String,List<String>>hm;
   public static void main(String[] args)
   {
       hm.put("2",Arrays.asList("a","b","c"));
   }
 } 

我不明白为什么会导致NullPointerException

有人可以帮帮我吗?

5 个答案:

答案 0 :(得分:4)

您需要设置hm

hm = new HashMap<String, List<String>>();

使用之前。

答案 1 :(得分:2)

您需要将HashMap<String,List<String>>放入(最初为空)hm字段。

答案 2 :(得分:2)

使用

static HashMap<String, List<String>> hm = new HashMap<String, List<String>>();

答案 3 :(得分:1)

与原始变量不同,应该显式初始化类。因此,创建一个HasMap实例。

答案 4 :(得分:0)

您指向没有Object的引用。所以你试图引用一个尚未创建的Object。

因此,使用“new”关键字创建一个Object来克服异常

static HashMap<String,List<String>> hm = new HashMap<String,List<String>>();