尝试在空对象引用上调用虚方法'boolean java.util.ArrayList.add(java.lang.Object)'

时间:2014-11-24 08:49:26

标签: java arraylist hash hashmap

我正在尝试使用旧hashmap中的arraylist构建新的hashmap,但是我收到此错误

错误:

ava.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.util.ArrayList.add(java.lang.Object)' on a null object reference

我知道这有些初始化是错误的,但无法抓住它

  nMap = new HashMap<String, ArrayList<Integer>>();
        for (String type: allTypes) {
            if (oData.get(type).size() > 0) {
                    arraySort(oData.get(type));
                    nData.get(type).add(fData.get(type).get(0).value);
               }
        }

OData是旧的hashmap,包含肯定的数据......

1 个答案:

答案 0 :(得分:5)

您可以使用以下代码。

if (nData.get(type) == null) {
    nData.put(type, new ArrayList<>());
}
nData.get(type).add(fData.get(type).get(0).value);