Я ищу наиболее эффективный способ java, чтобы проверить, выиграл ли кто-нибудь в tic tac toe. Данные находятся в массиве 2d, например...
char[][] ticTacToe =
{{'X',' ','O'},
{'O','X','O'},
{'X',' ','X'},};
Я знаю, что это не профессиональный способ инициализации массива, но я просто тестирую здесь.
Лучшее, что я могу сделать сейчас, - это исчерпывающее дерево if/else. Здесь один из этих деревьев...
if (ticTacToe[1][1] == 'X'){
if (ticTacToe[0][0] == 'X'){
if (ticTacToe[2][2] == 'X'){
System.out.println("X wins");
}
}
else if (ticTacToe[0][1] == 'X'){
if (ticTacToe[2][1] == 'X'){
System.out.println("X wins");
}
}
else if (ticTacToe[1][0] == 'X'){
if (ticTacToe[1][2] == 'X'){
System.out.println("X wins");
}
}
else if (ticTacToe[2][0] == 'X'){
if (ticTacToe[0][2] == 'X'){
System.out.println("X wins");
}
}
}
Этот только заботится о том, что посередине
Это очень просто, и я хочу его улучшить, поскольку минимизация строк кода идет.