/** Returns a simple character string showing the current board */
public String toString() {
String s = "";
for (int i=0; i<3; i++) {
for (int j=0; j<3; j++) {
switch (board[i][j]) {
case X: s += "X"; break;
case O: s += "O"; break;
case EMPTY: s += " "; break;
}
if (j < 2) s += "|"; // column boundary
}
if (i < 2) s += "\n-----\n"; // row boundary
}
return s;
}
/** Test run of a simple game */
public static void main(String[] args) {
TicTacToe game = new TicTacToe();
/* X moves: */ /* O moves: */
game.putMark(1,1); game.putMark(0,2);
game.putMark(2,2); game.putMark(0,0);
game.putMark(0,1); game.putMark(2,1);
game.putMark(1,2); game.putMark(1,0);
game.putMark(2,0);
System.out.println(game.toString());
int winningPlayer = game.winner();
if (winningPlayer != 0)
System.out.println(winningPlayer + " wins");
else
System.out.println("Tie");
}
}