gpt4 book ai didi

Java Map.put() 抛出空指针

转载 作者:行者123 更新时间:2023-12-01 10:03:55 26 4
gpt4 key购买 nike

这不是重复的。表面上看起来是这样,但是其他问题的解决方案并不适用。

当我在 Java 1.7 下运行以下方法时,出现空指针异常

normalOutCurrVals.put(new Double(x), new Byte(i));

我已经阅读了此处密切相关问题的文档和答案,但到目前为止我和我的团队都被难住了。我们是否遗漏了一些明显的东西?

我们只是希望将双值(出现在我们的程序 UI 上)到字节对应项的映射放入模拟设备的内存中。

以下是重要声明:

public final Map<Double, Byte>   normalOutCurrVals =   mapNormalOutCurrVals();
public final Map<Double, Byte> magnetOutCurrVals = mapMagnetOutCurrVals();
public final Map<Integer, Byte> freqVals = mapFreqVals();
public final Map<String, Byte> onTimeVals = mapOnTimeVals();
public final Map<String, Short> offTimeVals = mapOffTimeVals();
public final Map<String , Short> pulseWidthVals = mapPulseWidthVals();

任何帮助将不胜感激。

private Map<Double, Byte> mapNormalOutCurrVals(){

Map<Double, Byte> map = new HashMap<Double, Byte>();
double x = 0.000;
byte i = 0;

//first set of normal output currents
while (x <= 2.000){
normalOutCurrVals.put(new Double(x), new Byte(i));
x += 0.125;
i++;
}

while (x <= 4.000){
normalOutCurrVals.put(new Double(x), new Byte(i));
x += 0.250;
i++;
}

while (x <= 8.000){
normalOutCurrVals.put(new Double(x), new Byte(i));
x += 0.500;
i++;
}

return map;
}

最佳答案

我想你想填满你的 map !

private Map<Double, Byte> mapNormalOutCurrVals(){

Map map = new HashMap();
double x = 0.000;
byte i = 0;

//first set of normal output currents
while (x <= 2.000){
map.put(new Double(x), new Byte(i));
x += 0.125;
i++;
}

while (x <= 4.000){
map.put(new Double(x), new Byte(i));
x += 0.250;
i++;
}

while (x <= 8.000){
map.put(new Double(x), new Byte(i));
x += 0.500;
i++;
}

return map;
}

关于Java Map.put() 抛出空指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36603108/

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