Android:java.lang.NullPointerException错误

时间:2014-11-04 00:27:06

标签: java android

我只是开始了android开发,所以请原谅我这个问题是否有点基础。我在Blue J以及Android Studio中执行了以下代码。 Blue J似乎没有任何问题,但是Android Studio给了我" java.lang.NullPointerException" 错误。我知道应该导致此错误的原因,但我的代码中似乎没有调用任何 null 对象的成员:

public enum Seed {
    EMPTY,
    CROSS,
    NOUGHT
}

public class Cell {
    Seed content;

    Cell()
    {
        content = Seed.EMPTY;
    }
}

public class Board {
    Cell[][] cells;

    Board()
    {
        cells = new Cell[3][3];
        for(int i=0; i<3; i++)
            for(int j=0; j<3; j++)
                cells[i][j].content = Seed.EMPTY;
    }
}

public class MyActivity extends Activity {
    Board board;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);

        board = new Board();
    }
}

1 个答案:

答案 0 :(得分:3)

cells = new Cell[3][3];

你有一个多维的空指针数组。 在使用它们之前,您需要实例化数组的内容:

Board()
{
    cells = new Cell[3][3];
    for(int i=0; i<3; i++)
        for(int j=0; j<3; j++)
            cells[i][j] = new Cell()
            cells[i][j].content = Seed.EMPTY;
}