Java 2D堆栈实现,获取NullPointerException
我尝试实现这样的2D堆栈Java 2D堆栈实现,获取NullPointerException,java,stack,Java,Stack,我尝试实现这样的2D堆栈 private Stack[][]objectGrid=(Stack[][])新堆栈[宽度][高度] 然而,当我试图将一个元素推送到堆栈中时,我总是得到NullPointerException (objectGrid[x][y]).push(ch) 我检查了调试器,发现objectGrid[x][y]显示为null,因此我无法对其进行推送。上述初始化是否错误,我是否应该执行for循环来初始化堆栈数组的第二个维度?将initialize循环添加到代码中,如下所示: for
private Stack[][]objectGrid=(Stack[][])新堆栈[宽度][高度]
然而,当我试图将一个元素推送到堆栈中时,我总是得到NullPointerException
(objectGrid[x][y]).push(ch)
我检查了调试器,发现objectGrid[x][y]显示为null,因此我无法对其进行推送。上述初始化是否错误,我是否应该执行for循环来初始化堆栈数组的第二个维度?将initialize循环添加到代码中,如下所示:
for (int i = 0; i < width; i++) {
for (int j = 0; j < height; j++) {
objectGrid[i][j] = new Stack<Char>();
}
}
for(int i=0;i
您需要初始化数组的元素-否则所有位置都为空。