【发布时间】:2018-11-10 00:42:42
【问题描述】:
所以我目前正在 Netbeans 上编写 Connect 4。我已经进行了垂直和水平检查,但是我在对角线检查时遇到了问题,特别是 for 循环。目前我的代码,
public static boolean checkDiagnol(String[][] board, int counter, String playerMoving, int lastPlacedTileRow, int col) {
for (int i = lastPlacedTileRow-1; q = col-1; i >= 0, q >=0; i--,q--){
if (board[i][q] == playerMoving) {
counter += 1;
} else {
break;
}
if (counter > 4) {
return true;
}
}
for (int i = lastPlacedTileRow + 1, q = col +1; i < board.length, q < board[0].length; i++,q++) {
if (board[i][q] == playerMoving) {
counter += 1;
} else {
break;
}
if (counter > 4) {
return true;
}
}
return false;
}
lastPlacedTileRow 是最后放置的棋子所在的行,col 是用户选择的列,counter 是用来检查一行是否有 4 个棋子的计数器,playerMoving 是当前玩家棋子。
我目前的问题是我的 for 循环出错。这是我第一次在一个 for 循环中使用两个变量,所以我不确定它应该如何排列。
感谢您的帮助
【问题讨论】:
-
什么错误?使用消息更新您的问题。