Home Foros FOROS PARA AYUDAROS ENTRE VOSOTROS. EL PROFESOR AQUÍ NO RESPONDE Foro de Java Video 85: ¿boolean en true es capaz de borrar lo que se escribe? Respuesta a: Video 85: ¿boolean en true es capaz de borrar lo que se escribe?

Respuesta a: Video 85: ¿boolean en true es capaz de borrar lo que se escribe?

Home Foros FOROS PARA AYUDAROS ENTRE VOSOTROS. EL PROFESOR AQUÍ NO RESPONDE Foro de Java Video 85: ¿boolean en true es capaz de borrar lo que se escribe? Respuesta a: Video 85: ¿boolean en true es capaz de borrar lo que se escribe?

#16068

Kabuto
Participante

Hola Víctor.

Ese método de la clase AccionOrden no depende de ninguna condición para actuar, si no que es quién altera una condición para que luego otros métodos actúen de una forma u otra.

El ejemplo que tu pones:

if(principio){

//Instrucciones

}

Precisamente ese if, actuará de una forma u otra dependiendo de si AccionOrden ha cambiado el valor de la variable principio.

En una calculadora real, para operar con dos números, primero tecleamos el primer valor, luego pulsamos un operador matemático (+, -, *, /) y a continuación al teclear el segundo número, se borra de la pantalla el primer número que hemos tecleado para que solo se vea el segundo valor que vamos a introducir.

Para lograr esto, para que el programa sepa cuándo ha de quitar la pantalla el valor que se ha introducido, se usa la variable principio
Si vale true, al teclear un valor se borrará de pantalla lo que había previamente.
Si vale false, no se borrará, se irá añadiendo lo que se teclea, a lo que ya hay en pantalla.

¿Y cuándo principio adoptará valor true?
Queremos que eso ocurra cuando se pulse uno de los operadores matemáticos, por eso, los botones de estos operadores incorporan la acción AccionOrden
Fíjate los botones que marco en negrita:

ponerBoton(«7», insertar);
ponerBoton(«8», insertar);
ponerBoton(«9», insertar);
ponerBoton(«/», orden);
ponerBoton(«4», insertar);
ponerBoton(«5», insertar);
ponerBoton(«6», insertar);
ponerBoton(«*», orden);
ponerBoton(«1», insertar);
ponerBoton(«2», insertar);
ponerBoton(«3», insertar);
ponerBoton(«-«, orden);
ponerBoton(«0», insertar);
ponerBoton(«.», insertar);
ponerBoton(«=», orden);
ponerBoton(«+», orden);

Cuando se pulse esos botones señalados en negrita, se ejecutará el método:

public void actionPerformed(ActionEvent ae) {

principio = true;

}

Es decir, le dará valor true a principio, para que el siguiente número que se teclee en la calculadora, no se añada a los que ya hay en pantalla, si no que borre pantalla y comience a introducirse un nuevo valor.

Digamos que la “condición” para que se ejecute ese método, es que el usuario pulse uno de los botones que lo incorporan, que son los botones de los operadores matemáticos.

Espero haber sabido explicarme bien. Un saludo