繁体   English   中英

为什么我收到这个NullPointerException?

[英]Why am I receiving this NullPointerException?

我在clickCell[r][c] = false;上遇到NullPointerException clickCell[r][c] = false; 并在new LifeGUI(new LifeModel(x, y, s);并且无法解决它。请解释为什么会出现这个问题以及我如何解决它。

码:

public  LifeModel(int rows, int cols, int cellSize) {
    row = rows;
    col = cols;
    cSize = cellSize;
    for (int r = 0; r < row; r++) {
        for ( int c = 0; c < col; c++) {
            clickCell[r][c] = false;
        }
    }
}

public static void main(int x, int y, int s) {
    new LifeGUI(new LifeModel(x, y, s));        
}

您必须创建数组对象

boolean [][] clickCell = new boolean[rows][cols];

在for循环之前添加此命令。

更多信息在这里

如果clickCell在其他地方声明,则命令应为:

clickCell = new boolean[rows][cols];

或者如GriffeyDog建议的那样,在声明数组的位置添加new boolean[rows][cols] ,具体取决于程序的逻辑。

您尚未显示clickcell数组的声明位置,但您可能已声明但未初始化它。 你可能有

boolean[][] clickcell;

但需要:

boolean[][] clickcell = new boolean[rows][cols];

其中rowscols表示所需数组的大小。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM