gpt4 book ai didi

java - 为什么实例化后的链接声明会导致 NullPointerException?

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

我以为我明白了NullPointerException ,但显然不是。这里会抛出一个错误:( main 是一个类)

main.topicActionWeight.add(
Float.parseFloat(this.actionGenreWeightCombo.getSelectedItem().toString()));

TopicActionWeight是一个列表。这是我的列表声明:

public static List<Float> topicActionWeight,
topicAdventureWeight,
topicRPGWeight,
topicStrategyWeight,
topicSimulationWeight = new ArrayList<>();

我声明的列表不是指针,是吗?他们被创造了..

是的,我已经尝试过new ArrayList<Float>();

最佳答案

通过执行下面的行,您仅声明所有相应的数组列表,但不会初始化除 topicSimulationWeight 之外的任何一个,这就是为什么您的 topicActionWeight 为空,因此 NPE 为空。

public static List<Float> topicActionWeight,
topicAdventureWeight,
topicRPGWeight,
topicStrategyWeight,
topicSimulationWeight = new ArrayList<>();

正确的初始化方法是:-

public static List<Float> topicActionWeight = new ArrayList<>();
public static List<Float> topicAdventureWeight = new ArrayList<>();
public static List<Float> topicRPGWeight = new ArrayList<>();
public static List<Float> topicStrategyWeight = new ArrayList<>();
public static List<Float> topicSimulationWeight = new ArrayList<>();

关于java - 为什么实例化后的链接声明会导致 NullPointerException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25590937/

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