我正在尝试实现一个数独验证程序,以查看是否允许插入数字。
我有一个名为FieldModel的类的二维数组,目前只有一个整数作为属性,并且有一个getter和setter。 当我尝试初始化我的电路板时,我会在Eclipse Debugger中注意到" ClassNotLoadedException"这最终会产生一个NPE(我期望并试图通过使用Objects.nonNull()来捕获)。
我无法找到一个我理解的合理答案,并且真的不明白为什么会出现这样的问题,以及我如何能够加载"我的班级呢。我尝试在循环之前创建一个虚拟FieldModel对象,但这并没有帮助。
这是方法本身,它会在" if"上翻转。在第一个for循环中。非常感谢任何帮助!
public boolean checkIfValueInsertedLegal(FieldModel[][] board, int row, int column, int value) {
for (int i = 0; i < DIMENSION; i++) {
if (Objects.nonNull(board[row][i].getValue()) && board[row][i].getValue() == value) {
System.out.println("Could not insert value in row: " + row + " and column: " + i);
return false;
}
}
for (int j = 0; j < DIMENSION; j++) {
if (Objects.nonNull(board[row][j].getValue()) && board[j][column].getValue() == value) {
System.out.println("Could not insert value in row: " + j + " and column: " + column);
return false;
}
}
return true;
}