protected void pressedOnSpace(int row, int col) {
if (board[row][col] < board[0][0]) {
canvas.errors = false;
}
if (board[row][col] == GoFrame.WHITE) {
board[row][col] = GoFrame.BLACK;
}
else if (board[row][col] == GoFrame.BLACK) {
board[row][col] = GoFrame.EMPTY;
}
else if (board[row][col] == GoFrame.EMPTY) {
board[row][col] = GoFrame.WHITE;
}
}
我正在制作游戏";Go"用于Java分配。这是一个我遇到问题的辅助方法。游戏是基于数组和循环的。指令告诉我,我应该实现绑定检查,并且有一个布尔变量";canvas.errors";并且如果其评估为真;X〃;出现在黑板上,错误是没有";X〃;。我应该进行数组绑定检查,以确保";X〃;没有出现,但我不确定如何进行,因为我所尝试的一切都在继续产生";X〃;当我点击数组边界外的板时。我知道我应该找到程序可能出错的所有可能的方法,并评估这些方法;false";使用变量/函数,但我似乎搞不明白。第一个";如果";语句是经过一系列尝试后,我现在为绑定检查器所拥有的。任何帮助都将不胜感激,因为我是一个新的编码器。
我认为您可能只需要帮助构建代码来执行一个非常常见的操作,即验证,或者用通俗的英语,确保您处理用户提交无效信息的情况。您所要做的就是确保X和Y值代表goban上的合法单元格,这样您的代码在以后尝试处理无效值时就不会阻塞。
protected void pressedOnSpace(int row, int col) {
if (row >= 0 && row < 20) && (col >= 0 && col < 20) {
// insert your logic for changing color
} else {
// insert your logic for drawing a big fat X over the board
}
}