具有2d数组的空指针异常

时间:2013-01-19 19:02:33

标签: java multidimensional-array 2d

  

可能重复:
  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);
    }

1 个答案:

答案 0 :(得分:1)

数组不初始化数组的元素。因此,每个board[x][y]最初都是null