Java 2D列表赢得';t在第6个实体后打印

Java 2D列表赢得';t在第6个实体后打印,java,Java,我正在做一个记忆游戏 由于某些原因,我在将数字对打印到控制台时收到此错误消息。这是一个5x5的数字对网格 Exception in thread "main" java.lang.NullPointerException at Views.ConsoleView.<init>(ConsoleView.java:20) at Controllers.MemoryApplication.<init>(MemoryApplication.java:19) at main.mai

我正在做一个记忆游戏

由于某些原因,我在将数字对打印到控制台时收到此错误消息。这是一个5x5的数字对网格

Exception in thread "main" java.lang.NullPointerException
at Views.ConsoleView.<init>(ConsoleView.java:20)
at Controllers.MemoryApplication.<init>(MemoryApplication.java:19)
at main.main(main.java:9)
在本节中,您将Tiles数组中的一个条目设置为
null

System.out.print(tiles[row][column].getNumber()+ " ");
在本节中,您将对该数组中的每个对象调用
getNumber()
函数。其中包括
null


另外,您的gridMiddle似乎设置为1,我猜这里应该是2(对于5x5网格)

错误可能来自Tile类的getNumber()方法。请发布相同的代码。添加了包含getNumber方法的Tile类!这个修好了!谢谢
public ConsoleView(MemoryModel model)
{
    Tile[][] tiles = model.getTiles();

    System.out.println("--- Console View Memory ---");
    for (int row = 0; row < model.getNumberOfRows(); row++)
    {
        for (int column = 0; column < model.getNumberOfColumns(); column++)
        {
            System.out.print(tiles[row][column].getNumber()+ " ");
        }

        System.out.println();
    }
    System.out.print("----------------------------");

}
package Models;

public class Tile
{
    //Fields
    private int number;
    private boolean selected;
    private boolean guessed;

    public Tile(int number)
    {
       this.number = number;
    }

    //Properties
    public int getNumber() {
        return number;
    }

    public boolean isSelected() {
        return selected;
    }

    public boolean isGuessed() {
        return guessed;
    }
}
if(row == gridMiddle && column == gridMiddle && (row*column)%2 != 0)
{
    tiles[gridMiddle][gridMiddle] = null;
}
System.out.print(tiles[row][column].getNumber()+ " ");