有人可以帮我理解为什么我在添加到我的数组列表时会得到一个空指针。我试图制作它,以便在单击按钮时更改按钮上的文本,但我的ArrayList
似乎没有将内容添加到按钮中?
public class Game {
private GUI gui;
private ArrayList<String> pairs;
boolean clicked;
public Game() {
gui = new GUI(this);
clicked = false;
ArrayList<String> pairs = new ArrayList<String>();
}
public void addPairs() {
pairs.add("dog"); // where i get the null pointer
pairs.add("dog");
}
答案 0 :(得分:3)
pairs
构造函数中的{0}}类字段Game
。变化
ArrayList<String> pairs = new ArrayList<String>();
到
pairs = new ArrayList<String>();
或与钻石运营商一样
pairs = new ArrayList<>();
答案 1 :(得分:2)
您应该初始化班级成员pairs
this.pairs = new ArrayList<>(); // this may be omitted
而不是创建新的本地列表
ArrayList<String> pairs = new ArrayList<String>();