Juego "Gato" Hecho En Java!

Hola compañeros, como les comenté estoy aprendiendo a programar en Java e hice el juego "Gato" para ir practicando y aprendiendo las sintaxis del lenguaje, como podran ver por falta de experiencia y conocimiento resultaron demasiadas lineas de código para lo que hace el programa, pero bueno son cosas que debo mejorar y tambien hacer un código mucho menos enredoso =S, como sea dejo el código para quien guste probar el juego en consola y me den sus opiniones para mejorar, se aceptan criticas constructivas, no insultos jaja, y espero le sirva el código a los que como yo son nuevos programando.

ESPECIFICACIONES DEL JUEGO:

En sí es algo muy sencillo, solo pueden tirar 2 jugadores humanos, no tiene la opción para que juegues contra la máquina, hay que volver a correr el programa de nuevo cada vez que gana alguno de los jugadores gana o se empata.

PD: Dejé comentarios dentro del programa especificando alguna de las funciones de los métodos que cree, para que el que se tome la molestia de checarlo se pierda en mi laberinto de código lo menos posible jaja, gracias por leer saludos!.

PD2: Dejo un adjunto con el código del programa, por alguna razon cuando le doy en "leer más" no sé ve mi post completo :S.

 

AdjuntoTamaño
JuegoGato.txt9.19 KB

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Leonardo

Por favor, alguien que me de

Necesito que chequen el programita que hice y me den su opinion, estoy aprendiendo a programar.
Necesito consejos de que cosas debo mejorar, gracias por adelantado.

-----------------EDITED--------------
Administrador por favor elimine este post que hice, no obtuve los consejos que queria, y por alguna razon no puedo ver todo lo que escribi en el post, solo veo el link del archivo adjunto, gracias.

gracias = soy novato en esto

gracias = soy novato en esto me ayudo mucho tu codigo.

Imagen de Shadonwk

hola @Leonardo yo sí quisiera

hola @Leonardo yo sí quisiera hacerte una recomendación y es muy sencilla para empezar:

Trata de no dejar tantos espacios en blanco sin que sean necesarios:

tu código
 

podria ser:
 

otra recomendación aunque mas que recomendación seria un reto, es que intentes hacer el mismo juego pero con una interfaz gráfica, ahí encontraras cosas que tienes que aprender.. en cuanto al código esta bien, dicen que: "la practica hace al maestro"..

chin otra vez contestando un post de hace un año jaja ni pex...espero que a alguien le sirva..

Imagen de Sr. Negativo

Tu código...esta bien

@Leonardo
Necesito que chequen el programita que hice y me den su opinion, estoy aprendiendo a programar.

Para ser novato en Java, sabes programar mejor que muchos que conozco

Imagen de Shadonwk

creo que Sr. Negativo no leyó

creo que Sr. Negativo no leyó la ultima linea de mi comentario anterior XP

@Shadownk Año y medio en realidad

Pero igual vale.

Lo único que podría mencionar es que los if's else's siempre deben de ir con llaves aunque sean de una línea.

A veces, usar el operador ternario da código más breve, pero no todo mundo está acostumbrado a él ( bueno a esta altura ya deberían ).

Lo mismo sucede con las comprobaciones, if( x == true ) , aunque son correctas, lo más acostumbrado es escribir if( x )

Acá va el mismo programa con eso corregido.

 

p.d. Recientemente he estado coqueteando con la identación a 2 espacios en vez de 4, no me parece que sea tran grave después de todo.

Imagen de Sr. Negativo

No, no lo lei....ups

chin otra vez contestando un post de hace un año jaja ni pex...espero que a alguien le sirva.
No @Shadonwk no lo lei.

Ni me fijé la fecha del post...ya vez @OscarRyz no es el único que contesta post de hace uno o dos años.

Gracias, ja ja ja la próxima me fijó bien

como lo ago para k se imprima en una ventana

disculpa soy novato en esto pero me gusta solo kiero saber como se ase para imprimir una ventana

Imagen de arterzatij

Buenooo!!!!

Jejejej hoy me puse de ocioso jejeje y aunq ue es un post algo viejo eee pues alguien querra ver que mas se le puede hacer e investigar que es l oque se le cambio al codigo...

Igual habra cosas que se le pueden ver mejor pero hoy fue lo que se me ocurrio....

 

Imagen de genitalico

me resulto curioso este post

me resulto curioso este post de hace bastante tiempo, y quise agregar otro que tenia por ahi guardado en mi favoritos..

es el juego del gato, usando el algoritmo minimax,.. el juego esta muy chido y no se le puede ganar nunca a la maquina XD

Imagen de marcosaw

Una versión de práctica

Se me hizo bueno el ejercicio ya que también empiezo en esto de java, así que hice una versión con Swing, para practicar (quizá de manera inútil) clases anidadas, lambda y bucles for para atravesar arreglos. Quizá me compliqué la existencia pero fue la forma que se me ocurrió y funciona para dos jugadores humanos. Lo que menos me gusta es el switch de la clase Tiro y que el X y O son asignados automáticamente. Ahí se las dejo.

 

Imagen de ezamudio

matemáticas

Luego dicen que para qué sirven las matemáticas... en este caso, para escribir menos código. Ese switch de 9 casos podría reducirse bastante con tantita aritmética. Y para qué pasarle un string a algo que espera realmente un dígito? Si   fuera tipo   entonces simplemente puedes hacer que   y  .

Imagen de marcosaw

Aritmética,

Pensé hacerlo con aritmética, pero no se me ocurrió cómo, pero esa sugerencia que das muy bien, tira la clase Tiro a la basura y el código queda más compacto. La verdad solo estaba practicando anidar una clase, pero evidentemente en este ejemplo es excesivo, Saludos.