Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Fryuio en 30 Noviembre 2016, 12:33 pm



Título: Una dudilla para un programa Java
Publicado por: Fryuio en 30 Noviembre 2016, 12:33 pm
Hola muy buenas, necesitaría que alguien me diese una pista de como puedo hacer esto.

El ejemplo es el siguiente:

Yo ejecuto un juego, ejemplo:
-Juego1
-Juego2
...
etc

Y al acabarlo, me pone esto.
Juego1 (Acabado en x intentos)
Juego2
...
etc

Hasta ahí bien, lo que yo quiero saber es como puedo decirle que esos intentos (x) no cambien si al hacer otra vez el juego son mayores que los de antes, es decir, al ejecutar otra vez el juego y tener unos intentos "y", si esos "y" son mayores que los "x", no cambie ese valor.

El problema que tengo es que me los cambia sea cual sea los valores, y bueno necesito algo de ayuda de alguien que me diga por donde podrían ir los tiros. Gracias de antemano.


Título: Re: Una dudilla para un programa Java
Publicado por: Orubatosu en 30 Noviembre 2016, 19:22 pm
Hay dos opciones. Una es declarar esa variable como estatica, con lo que será compartida por cualquier clase que haya en el programa (fuera de otras clases claro). Si el problema es que se pone a cero cada vez que inicias el programa, entonces es algo tan simple como que debes de guardar ese dato en un recurso externo. Lo normal es que en un fichero, por ejemplo uno de simple texto plano


Título: Re: Una dudilla para un programa Java
Publicado por: Fryuio en 1 Diciembre 2016, 15:42 pm
Hay dos opciones. Una es declarar esa variable como estatica, con lo que será compartida por cualquier clase que haya en el programa (fuera de otras clases claro). Si el problema es que se pone a cero cada vez que inicias el programa, entonces es algo tan simple como que debes de guardar ese dato en un recurso externo. Lo normal es que en un fichero, por ejemplo uno de simple texto plano

No no me has entendido. Yo no quiero que los datos se guarden al finalizar el programa. Yo lo que digo es que cuando esté el programa en ejecución si tú haces el juego 1 vez, te ponga esos intentos. Pero si lo haces una 2º vez, si esos intentos son menores que los de la 1º vez, cambien, si y solo sí, son menores que los primeros. De momento no me interesa almacenar los intentos en ningún sitio, quiero que sean volátiles pero que se actualicen como he comentado xd. Gracias


Título: Re: Una dudilla para un programa Java
Publicado por: 0xFer en 1 Diciembre 2016, 18:11 pm
Muestra lo que tienes para dar una idea, por ejemplo me imagino algo como:

Código
  1. class Juego{
  2.    private int intentosMin = 99; //cualquier número muy alto
  3.  
  4. public void play(){
  5.    int intentos = 1;
  6.    /*
  7.     * Aqui la lógica del juego
  8.     * intentos++;
  9.     */
  10.    if( intentos < intentosMin)
  11.        intentosMin = intentos;
  12.  
  13.    System.out.println("Terminado en " + intentos + " intentos");
  14.    System.out.println("Record : " + intentosMin + " intentos");
  15. }
  16.  
  17. }

Código
  1. Juego miJuego = new Juego();
  2. miJuego.play(); //jugar por primera vez
  3. miJuego.play(); //jugar por segunda vez
Saludos  ;D


Título: Re: Una dudilla para un programa Java
Publicado por: Fryuio en 1 Diciembre 2016, 19:20 pm
Muestra lo que tienes para dar una idea, por ejemplo me imagino algo como:

Código
  1. class Juego{
  2.    private int intentosMin = 99; //cualquier número muy alto
  3.  
  4. public void play(){
  5.    int intentos = 1;
  6.    /*
  7.     * Aqui la lógica del juego
  8.     * intentos++;
  9.     */
  10.    if( intentos < intentosMin)
  11.        intentosMin = intentos;
  12.  
  13.    System.out.println("Terminado en " + intentos + " intentos");
  14.    System.out.println("Record : " + intentosMin + " intentos");
  15. }
  16.  
  17. }

Código
  1. Juego miJuego = new Juego();
  2. miJuego.play(); //jugar por primera vez
  3. miJuego.play(); //jugar por segunda vez
Saludos  ;D

Bueno creo que con lo que acabas de hacer, me has dado la idea que necesitaba. MUCHAS GRACIAS XD