gpt4 book ai didi

java - Java 中 Tic Tac Toe 的有效 Move 方法

转载 作者:行者123 更新时间:2023-11-30 11:04:52 26 4
gpt4 key购买 nike

我接到了开发井字游戏的任务,但我的 isValidMove 方法造成了麻烦。即使在测试 isValidMove 方法后,它也会替换符号。实际上,它永远不会检查 isValidMove 方法中的“if”条件。

public boolean executeMove(String move, Player p)
{
int row;
int col;
row = (int)(move.charAt(0)-'0');
col = (int)(move.charAt(1)-'0');

if(isValidMove(move) == false)
{
board[row-1][col-1]= p.getSymbol();
printBoard();
}
return true;
}

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;
}

PS:如果有人能告诉我..程序以字符串形式输入玩家姓名但打印地址而不是打印姓名..该怎么办?

最佳答案

似乎您的 executeMove() 只有在合法执行移动时才必须返回 true。但即使是非法移动,您也会返回 true

public boolean executeMove(String move, Player p) {
int row;
int col;
row = (int)(move.charAt(0)-'0');
col = (int)(move.charAt(1)-'0');

boolean valid = isValidMove(move); // <-- remember is the move valid
if (valid) {
board[row-1][col-1] = p.getSymbol(); // <-- place symbol only if move is valid
}
printBoard();
return valid;
}

关于java - Java 中 Tic Tac Toe 的有效 Move 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29865045/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com