Desafío de programación Java: la adición de una interfaz gráfica de usuario del programa de tic-tac-toe
En Java Programming Challenge: A Simple Tic-Tac-Toe juego que estaba el reto de escribir un programa basado en la consola que juega el simple juego de Tic-Tac-Toe. El reto de programación Java es utilizar Swing para agregar una interfaz gráfica de usuario (GUI) para el programa. La interfaz gráfica de usuario debe ser similar a la que se muestra aquí.
El juego es simple. El jugador humano juega primero haciendo clic en cualquiera de las plazas. La plaza se hace clic por el ser humano muestra una gran X. Después de las obras humanas, el programa determina si el ser humano ha ganado o forzado un empate. Si es así, se muestra un mensaje, la junta se restablece, y un nuevo juego comienza. Si no, el equipo escoge un movimiento y marca su plaza con una gran O.
Entonces, el programa determina si el equipo ha ganado la partida. Si es así, el programa muestra un mensaje, restablece el tablero, y comienza un nuevo juego. Si no, el jugador humano juega de nuevo. Esto continúa hasta que un jugador gana o la totalidad de las plazas se llenan.
Su programa debe utilizar el mismo TicTacToeBoard clase que usted crea para Desafío de programación Java: Adición de clase al Programa de Tic-Tac-Toe simple. En otras palabras, debe aplicar los mismos métodos exactas. Para su comodidad, estos métodos se repiten en la siguiente tabla.
Constructor | Descripción |
---|---|
TicTacToeBoard | Crea un nuevo TicTacToeBoard con todos los cuadrados vacíos. |
Procedimiento | Descripción |
void reset () | Restablece el estado de cada plaza de vacío. |
anular playAt (plaza String, int jugador) | Marca el cuadrado especificado (A1, A2, A3, B1, B2, B3, C1, C2, o C3) Para el jugador especificado (1 de X, 2 para O). Lanza IllegalArgumentException si cuadrado No es uno de los valores permitidos, reproductor no es 1 o 2, o la plaza especificada no está vacía. |
int isGameOver () | Determina si el juego ha terminado. Devuelve 0 si el juego no ha terminado, 1 si X ha ganado la partida, 2 si O ha ganado la partida, y 3 si el juego es un empate. El juego termina condiciones son las siguientes: 1: Si cualquier fila, columna o diagonal contiene todas las equis. 2: Si cualquier fila, columna o diagonal contiene todos ceros. 3: Si no hay plazas vacías y ni X ni O ha ganado. |
int getNextMove () | Devuelve un entero que representa el próximo paso para el opositor de la computadora. Este método debe hacer un esfuerzo rudimentario para seleccionar un buen movimiento, de acuerdo con la siguiente estrategia: * Si el centro (plaza B2) Está vacía, el juego de la plaza central. * Si el centro no está vacío pero cualquiera de las cuatro esquinas (cuadrados A1, A3, C1, o C3) Están vacías, jugar una de las esquinas (no importa cuál). * Si el centro no está vacío y no hay esquinas están vacías, jugar a uno de los bordes (cuadrados A2, B1, B3, o C2). |
String toString () | Devuelve una cadena que representa el estado actual de la junta directiva. La cadena incluye caracteres de nueva línea para mostrar las filas, así como líneas de separación de las líneas de consola por separado, como en este ejemplo: O | | O ---| --- | --- | X | ---| --- | --- | X | |
Usted encontrará la solución a este reto en el Descargas pestaña de El Java All-in-One For Dummies, Página cuarto producto Edition.
¡Buena suerte!