我试图从扫描器中获取用户输入,然后他们使用所说的值将其与二维数组中的值进行比较
public void valid(int tempRow, int tempCol){
if(board[tempRow][tempCol] = "W"){
display();
} else {
System.out.println("Move invalid, try again");
makeMove();
}
setPiece(tempRow, tempCol, "W");
display();
}
这个 if(board[tempRow][tempCol] = "W"){
返回错误:
incompatable types: java.langString cannot be converted to boolean
这是我要比较的数组:
String[][] board = {{"-", "-", "-", "-", "-", "-", "-", "-"},
{"-", "-", "-", "-", "-", "-", "-", "-"},{"-", "-", "-", "-", "-", "-", "-", "-"},
{"-", "-", "-", "-", "-", "-", "-", "-"},{"-", "-", "-", "-", "-", "-", "-", "-"},
{"-", "-", "-", "-", "-", "-", "-", "-"},{"-", "-", "-", "-", "-", "-", "-", "-"},
{"-", "-", "-", "-", "-", "-", "-", "-"}};
举个例子,我想用用户输入的行和列,假设它们是row1col1。然后我想把它们和数组进行比较,看看 board[1][1] = "W"
如果是这样的话,那就换一块。谢谢您的帮助。
2条答案
按热度按时间ymzxtsji1#
声明
指:
将字符串“w”赋给
board[tempRow][tempCol]
检验结果是否正确。当然,这是无法做到的,因为字符串不是布尔值。
你想用
==
而不是=
. 但这也是错误的。使用.equals()
用于字符串比较。xmd2e60i2#
if(board[temprow][tempcol]=“w”)
应该是
if(board[temprow][tempcol]=“w”)