Solucionado (ver solución)
Solucionado
(ver solución)
4
respuestas

asignacion de metodo a variable booleana

        cuentaDeJimena.depositar(1000);
        boolean puedeTrasnferir = cuentaDeJimena.transferir(400, miCuenta);

        if(puedeTrasnferir){
            System.out.println("Transferencia exitosa");
        }else{
            System.out.println("No es posible");
        }
        System.out.println(cuentaDeJimena.saldo);
        System.out.println(miCuenta.saldo);

Hola que tal. Tengo una duda. Cuando a la variable puedeTranferir se le asigna el metodo, porque en vez de hacer solo eso, lleva a cabo tambien la accion. No se si me entiendo. Si yo le asigno un metodo a una variable, tambien estoy realizando el llamado al metodo? porque yo creia que la asignacion a una variable va por un lado y el llamado al metodo lo debo hacer en otra linea

4 respuestas

¡Hola Evana! Deseo que estés bien!

Tu variable "puedeTrasnferir" no estas asignando el metodo "cuentaDeJimena.transferir(400, miCuenta)", esa variable solo esta guardando un valor booleano que es retornado de ese método "cuentaDeJimena.transferir(400, miCuenta)", es esta la instrucción que ejecuta el metodo a la verdad.

¡Te deseo mucho éxito en tus estudios! y recuerda que aquí estaremos para apoyarte!

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

Entonces es como que estamos ejecutando el metodo y a la vez guardando su resultado en la variable. Entendi bien?

Mi aporte mientras aprendo.

Vamos a transferir, para ello necesitamos el método, pero solamente es posible transferir si el monto esta disponible en la cuenta. por ello:

public boolean transfiere(double valor, Cuenta destino) {
        if(this.saldo >= valor) {
            this.saldo -= valor;
            destino.deposita(valor);
            return true;
        } else {
            return false;
        }
    }

transfiere se construyo de manera que haga la transferencia verificando el saldo disponible y retorna un boolean que indica lo que ha pasado, que en este casotrue, si ha transferido, false si no lo ha hecho.

Lo que se hace en esta lineas es:

boolean puedeTrasnferir = cuentaDeJimena.transferir(400, miCuenta);

        if(puedeTrasnferir){
            System.out.println("Transferencia exitosa");
        }else{
            System.out.println("No es posible");
        }
  1. Crear una variable puedeTrasnferir que solamente recibirá un boolean que es lo que retorna transferir
  2. Verifica lo retornado por transferir para comunicarse con el usuario.

Espero que esto te aclare tus dudas.

solución!

Exactamente eso Evana, entendiste bien! lo que tienes al lado derecho de tu signo de igualdad es lo que esta ejecutando el método, pero este método te retorna un valor booleano que es guardado en la variable que declaraste a tu lado izquierdo del signo de igualdad.

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

¡Te deseo mucho éxito en tus estudios! y recuerda que aquí estaremos para apoyarte!

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!