我正在尝试初始化一个二维数组列表,其中每个列/行都有一个包装对象。
private WrapperBoard[][] board;
public Board() {;
for(int row = 0; row <= dime; row++) {
for(int col = 0; col <= dime; col++) {
board[row][col] = new WrapperBoard();
}
}
我所做的就是初始化一个 2d Arraylist,其中每个对象都是一个wrapperBoard。 WrapperBoard 是一个堆栈对象。
I'm recieving the error java.lang.NullPointerException
最佳答案
您的代码中存在一些错误:
如果你想在数组中放置一些东西,你没有先初始化数组。默认情况下,类的非私有(private)字段用
null
初始化。这就是为什么你看到 NPE(你试图在 null 上调用[row][col]
),所以使用private WrapperBoard[][] board = new WrapperBoard[dime][dime];
数组中的索引从
0
开始最大值为dim - 1
所以你应该继续迭代,而row < dime
,不是row <= dime
(col
相同)
关于java - java 包装类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22335771/