Benötigen Sie eine bessere Logik für TicTacToe

Ich implementiere eine TicTacToe-GUI-App mit Java Swing. Die aktuelle Logik für einen Gewinn ist:

JButton[] button = new JButton[9];
boolean win = false;
//logic for player's win
if (button[0].getText() == button[1].getText() && button[1].getText() == button[2].getText() && button[0].getText() != "") {
    Won = true;
} else if (button[3].getText() == button[4].getText() && button[4].getText() == button[5].getText() && button[3].getText() != "") {
    Won = true;
} else if (button[6].getText() == button[7].getText() && button[7].getText() == button[8].getText() && button[6].getText() != "") {
    Won = true;
} else if (button[0].getText() == button[3].getText() && button[3].getText() == button[6].getText() && button[0].getText() != "") {
    Won = true;
} else if (button[1].getText() == button[4].getText() && button[4].getText() == button[7].getText() && button[1].getText() != "") {
    Won = true;
} else if (button[2].getText() == button[5].getText() && button[5].getText() == button[8].getText() && button[2].getText() != "") {
    Won = true;
} else if (button[0].getText() == button[4].getText() && button[4].getText() == button[8].getText() && button[0].getText() != "") {
    Won = true;
} else if (button[2].getText() == button[4].getText() && button[4].getText() == button[6].getText() && button[2].getText() != "") {
    Won = true;
}

Das sieht etwas ungeschickt aus. Gibt es eine bessere Logik für den Gewinn eines Spielers?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage