0
我正在做一個井字遊戲。我現在被困在如何檢查贏家。
我在checkwinner方法中得到「java:97:error not statement」。
checkwinner應停止遊戲並宣佈獲勝者。
我的代碼中的錯誤在哪裏?java:97:錯誤不是聲明
import java.util.Scanner;
public class TicTac{
private static char [][] board = new char [3][3];
private static char playerX = 'X';
private static char playerO = 'O';
private static Scanner keyboard = new Scanner(System.in);
private static char invalitplay = 0;
private static boolean playerTurn = true;
public static void main(String[] args){
runing();
}
public static void runing(){
showBoard();
currentPlayer();
gameEnd();
}
public void menu(){
System.out.println("welcome to TIC TAC TOE ");
System.out.println("would you like to play? (Y/N)");
}
// rita upp brädet
public static void showBoard(){
for(int i = 0; i < board.length; i++) {
for(int j = 0; j < board[i].length; j++) {
System.out.print("[ " + board[i][j] + " ]" + "\t");
}
System.out.println("\n");
}
}
//ta bort allt värde i arry/starta om spelet
public static void clearBoard(){
for(int i = 0; i < board.length; i++) {
for(int j = 0; j < board[i].length; j++) {
board[i][j] = 0;
}
}
}
public static void currentPlayer(){
for (int turn = 0; turn < 9; turn++){
if(playerTurn){
playerWithX();
playerTurn= false;
}
else{
playerWithO();
playerTurn = true;
}
}
System.out.println("DRAW");
}
public static void playerWithO(){
System.out.println(" Player O :Enter a row: ");
int row = keyboard.nextInt()-1;
System.out.println(" Player O :Enter a column: ");
int col = keyboard.nextInt()-1;
board[row][col] = playerO;
showBoard();
// booleanen = true;
}
public static void playerWithX(){
System.out.println("Player X: Enter a row: ");
int row = keyboard.nextInt()-1;
System.out.println("Player X:Enter a column: ");
int col = keyboard.nextInt()-1;
board[row][col] = playerX;
showBoard();
//booleanen = false;
}
// kolla vem tur det är genom att börja med player X som start
public static void checkwinner(){
if (board[0][0] == playerX && board[0][1] == playerX && board[0][2] == playerX || /* första raden*/
board[1][0] == playerX && board[1][1] == playerX && board[1][2] == playerX || /* andra raden*/
board[2][0] == playerX && board[2][1] == playerX && board[2][2] == playerX || /* tredje raden*/
board[0][0] == playerX && board[1][0] == playerX && board[2][0] == playerX || /* första colum*/
board[0][1] == playerX && board[1][1] == playerX && board[2][1] == playerX || /* andra colum*/
board[0][2] == playerX && board[1][2] == playerX && board[2][2] == playerX || /* tredje colum*/
board[0][0] == playerX && board[1][1] == playerX && board[2][2] == playerX || /* snea vänster till höger*/
board[2][0] == playerX && board[1][1] == playerX && board[0][2] == playerX){ /*snea höger till vänster*/
System.out.println("Player X has won");
gameEnd();
}else{
(board[0][0] == playerO && board[0][1] == playerO && board[0][2] == playerO || /* första raden*/
board[1][0] == playerO && board[1][1] == playerO && board[1][2] == playerO || /* andra raden*/
board[2][0] == playerO && board[2][1] == playerO && board[2][2] == playerO || /* tredje raden*/
board[0][0] == playerO && board[1][0] == playerO && board[2][0] == playerO || /* första colum*/
board[0][1] == playerO && board[1][1] == playerO && board[2][1] == playerO || /* andra colum*/
board[0][2] == playerO && board[1][2] == playerO && board[2][2] == playerO || /* tredje colum*/
board[0][0] == playerO && board[1][1] == playerO && board[2][2] == playerO || /* snea vänster till höger*/
board[2][0] == playerO && board[1][1] == playerO && board[0][2] == playerO); /* snea höger till vänster*/
System.out.println("Player O has won");
gameEnd();
}
}
public static void gameEnd(){
System.out.println("Wanna play again?");
String answer ="yes";
answer = keyboard.nextLine();
while(answer.equals("yes")){
clearBoard();
}
}
}
你必須發佈錯誤,你也忘記把'if'放在其他部分 – silentprogrammer
在你的巨量檢查之前刪除'{''''後'else'並加上'if'。用'{'替代';'在巨量的檢查結尾處。 – Manu