【发布时间】:2023-03-24 18:25:01
【问题描述】:
我正在尝试使用来自旧哈希映射的 arraylist 构建新哈希映射,但出现此错误
错误:
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 是旧的哈希图,肯定包含数据...
【问题讨论】:
-
cData不包含type(或与此键关联的值为空,但可能性较小)。使用调试器,查看cData以检查它究竟包含哪些元素。 -
cData.get(type) 返回空值
-
地图包含空元素,您必须在其中“放”一些东西。
-
是的,但是如何添加第一个类型,然后将相应的数组列表更新到每个类型
标签: java arraylist hash hashmap