可能重复:
objects classes and arrays - why is it returning ‘null’ ? [java]
具有相似标题的其他问题都有答案,他们的数据需要初始化,我已经完成但我仍然得到空指针异常。谁能告诉我为什么?
public class grid{
private Node [][] board = new Node [9][9];
public boolean add(int x, int y, char label) {
boolean valid=true;
System.out.println("enter add");
if(label==' '){
System.out.println("enter if 1");
board[x][y].setValue('0');
}
else if(label<='9'&&label>'0'){
System.out.println("enter if 2");
board[x][y].setValue(label);
}
else{
valid=false;
}
if(valid)
System.out.println("valid");
return valid;
}
我在setValue行(10和14)
上收到错误 public class Node{
public char value;
public char [] possibleValues = {1,2,3,4,5,6,7,8,9};
public boolean correct=false;
}
编辑:我想通了,如果其他人有同样的问题,这似乎解决了。
if(label==' '){
System.out.println("enter if 1");
board[x][y]= new Node(' ');
}
else if(label<='9'&&label>'0'){
System.out.println("enter if 2");
board[x][y]= new Node(label);
}
答案 0 :(得分:1)
数组不初始化数组的元素。因此,每个board[x][y]
最初都是null
。