我正在制作井字游戏。它工作得很好,只是我无法确定应该写什么条件才能重新采取无效的举动。
这就是移动的方式 (还有另一个公共(public)方法可以调用这两个私有(private)方法。)
private String getHumanMove()
{
Scanner in = new Scanner(System.in);
System.out.println("Enter Move: ");
String str = in.next();
return str;
}
private String getComputerMove()
{
System.out.println("Enter Move: ");
Random r = new Random();
int r_row = r.nextInt(3) +1;
int r_col = r.nextInt(3) +1;
String str = String.valueOf(r_row)+ String.valueOf(r_col);
return str;
}
这是 isValidMove() 方法
public boolean isValidMove(String move)
{
int row = (int)(move.charAt(0)-'0');
int col = (int)(move.charAt(1)-'0');
if(board[row-1][col-1] == ' ')
{
return true;
}
return false;
}
我尝试在 isValidMove()
中使用 while 循环,但它不起作用。
请帮我看看如何再次输入棋步?
最佳答案
类似
String move;
do {
move = getHumanMove();
} while(!isValidMove(move));
?
关于java - 如何在Java中重新对井字棋的二维数组进行移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29876677/