我有一个类,其中包含 ArrayList 作为成员变量
public class Tile {
private final String Name;
private final ArrayList<Integer> sides;
public Tile (String name, int up, int right,int down, int left){
this.Name = name;
this.sides.add(up);
}
}
因此,当我创建 Tile 对象时,我想将上、右、下、左值设置为 Tile 类的 4 个对象数组。使用上面的代码,我从 NetBean 收到错误“变量边可能尚未初始化”。我不确定这意味着什么,因为我正在尝试使用构建方法初始化它。
向 NetBean 寻求帮助最终得到以下结果,并出现相同的错误。
this.sides.set(0, up);
我是 Java 新手,所以如果有人可以提供一些,我正在寻找一些关于我无法理解的概念的说明。
谢谢
最佳答案
您收到消息变量面可能尚未初始化
,这已经解释了您的问题。您必须首先初始化 Sides 数组列表。
像这样:
private final ArrayList<Integer> sides = new ArrayList<>();
或者在将对象添加到 side 列表之前在构造函数中,如下所示:
public Tile (String name, int up, int right,int down, int left){
sides = new ArrayList<Integer>();
this.Name = name;
this.sides.add(up);
}
关于java - 如何在构建方法期间为 Java 类的 ArrayList 成员变量赋值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38113019/