【发布时间】:2011-11-29 16:51:06
【问题描述】:
我正在创建一个井字游戏,并使用一维数组创建了棋盘。
我有以下代码,但即使棋盘仍然是空的并且可以播放更多动作,它也会返回 true。有人可以告诉我哪里出错了。谢谢
public boolean gameIsADraw() {
for (int i = 0; i <= 9; i++) {
if (!board[i].equals(" ")){
if (gameIsAWin() == false) {
}
return true;
}
}
return false;
}
public boolean gameIsAWin() {
for (String s: winningConditions) {
if (winningSituations(s.charAt(0), s.charAt(1), s.charAt(2)) == true){
return true;
}
}
return false;
}
【问题讨论】:
-
您是否尝试过正确实现gameIsAWin()?这可能行得通。
-
请问您可以发布您的完整代码吗?我建议使用 Eclipse 等 IDE 进行调试。
-
预期的功能是什么?你返回一个布尔值。你想要 true 表示比赛是平局,false 表示有人赢了或者比赛还没有结束?
-
i < 9,因为棋盘有 9 个图块(索引在 [0..8] 中)。 -
@Matthew 已经粘贴了 gameIsAWin() 方法 - 正确的想法
标签: java if-statement for-loop