我正在做简单的TicTacToe Java作业,仅剩下一个问题,该问题没有获得DRAW结果的正确方法。完善了TicTacToe的正常情况下获胜步骤...完成抽奖结果...
我想到了使用标记,但是不知道在此代码中实现它的想法。
if(check_axis.equals("XXX"))
{
System.out.println("Player 1 Wins !");
end = 1;
break;
}else if(check_axis.equals("OOO")){
System.out.println("Player 2 Wins !");
end = 1;
break;
}else
{
System.out.println("Drawn results !");
end = 1;
break;
}
答案 0 :(得分:-1)
如果发现没有人获胜,则必须在循环后执行。
String check_axis = "";
for(int i = 0; i <= 8; i++) {
...
if(check_axis.equals("XXX")) {
...
end = 1;
break;
} else if(check_axis.equals("OOO")){
...
end = 1;
break;
}
// don't do it here!
}
if(end != 1) // if noone has won yet
{
// check if the board is full (no empty spots left for a player to choose)
// if it is full, then it is a tie
}
您不想在循环中执行此操作的原因是,您需要检查是否所有轴都不表示获胜者。在检查完所有轴后,再没有找到一个轴,您可以放心地假设没有轴。