gpt4 book ai didi

java - Object2ObjectOpenHashMap put 方法中的 NullpointerException

转载 作者:行者123 更新时间:2023-12-01 19:25:11 24 4
gpt4 key购买 nike

我在使用 Object2ObjectOpenHashMap 时遇到问题,当我使用 put 方法时,java 给我这个异常“NullPointerException”。

这是代码:

private Object2ObjectOpenHashMap level1 = new Object2ObjectOpenHashMap();
private Object2ObjectOpenHashMap level0 = new Object2ObjectOpenHashMap();
    public void map(Object ke, Text val, Context context) throws IOException, InterruptedException {

Configuration conf = context.getConfiguration();
int numberAttributes = conf.getInt("numberAttributes", 0);
String jsoncombinationlevel0 = conf.get("combinationlevel0");
String jsonopenlevel0 = conf.get("openlevel0");
String jsoncombinationlevel1 = conf.get("combinationlevel1");

ArrayList<OpenBitSet> open1ArrayList = new Gson().fromJson(val.toString(), new TypeToken<ArrayList<OpenBitSet>>(){}.getType());
ArrayList<OpenBitSet> open0ArrayList = new Gson().fromJson(jsonopenlevel0.toString(), new TypeToken<ArrayList<OpenBitSet>>(){}.getType());
ArrayList<CombinationHelper> chLevel0 = new Gson().fromJson(jsoncombinationlevel0.toString(), new TypeToken<ArrayList<CombinationHelper>>(){}.getType());
ArrayList<CombinationHelper> chLevel1 = new Gson().fromJson(jsoncombinationlevel1.toString(), new TypeToken<ArrayList<CombinationHelper>>(){}.getType());

//ricostruisco level1
int i=0;
for(OpenBitSet x : open1ArrayList) {
level1.put(x, chLevel1.get(i));
i++;

}
//other stuff
.
.
.}

所以,当代码到达 for 时,我使用 put 方法 java 给我这个异常:

Caused by: java.lang.NullPointerException at hadoop.InitializeCplusForLevelMapReduce$MapperInitializeCplusForLevel.map(InitializeCplusForLevelMapReduce.java:78)

第 78 行在哪里

level1.put(x, chLevel1.get(i));

我不知道为什么,这似乎是正确的,我想创建level1,并且对于相对数组列表中的每个openBitSet,我想将其与相对combinationHelper放在level1中。如果只找到 put 方法,我尝试过其他方法,但都是同样的事情,同样的异常。

最佳答案

我认为 chLevel1 为空,因为该字符串无法解析为您的对象类

此外,您应该只执行 new Gson() 一次,最好作为静态字段

关于java - Object2ObjectOpenHashMap put 方法中的 NullpointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59319152/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com