Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
8
respuestas

[Duda] Como concatenar el valor de la transacción junto con el mensaje...

Saludos a toda la comunidad. Quisiera saber por favor, para el caso que se utilice una variable de tipo 'boolean': ¿Cómo concatenar el valor de la operación que se quiere gestionar en alguna transacción junto con el mensaje exitoso o fallido de la transacción a realizar? Me explico: para el caso final del vídeo, si quiero que en el mensaje me aparezca: "Transferencia exitosa de 400 soles". O en el caso que no haya sido exitosa la transferencia se muestre un mensaje que diga: "No es posible realizar la transferencia de 400 soles".

Les quedo muy atento y les agradezco a cualquier respuesta...

8 respuestas

Puedes declarar una variable double valor = 400;

    if (cuentaDeJimena.transferir(valor, miCuenta)) {
        System.out.println("Transferencia exitosa de " + valor);
    }
    else {
        System.out.println("Transferencia no exitosa de " + valor);
    }

Hola Stevenson. Eso lo entiendo muy bien, pero en este caso yo me estoy refiriendo al caso del ejercicio final del video que es muy diferente a lo que usted me plantea y así no funciona. Al parecer creería que eso no es posible porque nadie del equipo de Alura ha podido responder algo relacionado con el tema, sin embargo habría que realizarse una consulta en la web y la dejaría pendiente, porque quiero seguir avanzando con el curso para luego no verme corto de tiempo con los demás temas. Le agradezco por su atención...

hola amigos aqui esta mi codigo en relacion con el ejercicio no se si es lo que estes buscando saludos

public boolean transferir(double valor, Cuenta cuenta){

    boolean retiro = retirar(valor);

    if (retiro) {

        cuenta.depositar(valor);
        return true;
    }
    return false;


}

Hola Orlando, un gusto saludarte.

Sabes que yo también tenia esa duda y tengo esta solución para ti.

Me he dado cuenta que el instructor declara la lógica de puedetransferir() en el método main y al querer utilizarlo y concatenarlo con saldo, este no llega a ser posible su uso.

Mi recomendación es tener esa lógica mismo desde el método transferir, ya que desde ahí posees el parámetro valor y desde ahí si se puede utilizar. Te comparto el código:

public boolean transferir(double valor, Cuenta cuenta) {
        if (this.saldo >= valor) {
            this.saldo -= valor;
            cuenta.depositar(valor);
            System.out.println("Transferencia exitosa de " + valor + " soles");
            return true;
        } else {
            System.out.println("No es posible realizar la transferencia de " + valor + " soles");
            return false;
        }
    }

Espero te sirve. Saludos!

Hola Luis, cordial saludo. Muy agradecido por tu aporte pero ahora, no se si quiero complicarme la vida y se me ocurre querer poder hacer una concatenación donde aparte q muestre el valor, así como tu lo mencionas, q también indique el nombre de la persona quien recibe esa operación. Entonces en este caso el método debería recibir esos** (corrijo: no dos)** tres parámetros: el valor, la cuenta y el nombre del cliente, pero no he podido implementarlo, q debe ser algo muy sencillo. Entonces si te parece, ahí te dejo mi inquietud y le quedo muy pendiente. Felicidades...

Orlando, por que no compartes tu codigo? Estamos opinando sobre una implementacion pero no hemos visto ni la primera linea de codigo.

Stevenson, ahora lo que planteo es poder encontrar la forma de implementar un método para transferir un saldo, como puede ser el caso de que el método reciba tres parámetros: (valor, númeroCuenta, nombreCliente) y luego cuando se llame al método, se pueda indicar para que muestre un mensaje, algo así como lo siguiente:

System.out.println("Transferencia exitosa realizada a "+nombreCliente+" por un valor de "+valor);

Con lo indicado por Luis, se puede ver un mensaje que indique el valor, pero no el nombre de la persona quien recibe la transferencia. Si no hay un aporte para ello, cuando termine todo, le dedicaré el tiempo necesario para solucionarlo y si es el caso compartiré el código...

Hola Orlando, puedes asignar el nombre del titular de la cuenta de la misma manera como asignas el saldo de las cuentas:

cuentaDeJimena.saldo = 1000;
cuentaDeJimena.titular = "Jimena";

Y en la clase principal puedes crear el método de la siguiente manera:

    public boolean transferir(double valor, Cuenta cuenta) {
        if(this.saldo >= valor) {
            this.saldo -= valor;
            cuenta.saldo += valor;
            System.out.println("Transferencia exitosa realizada a " + cuenta.titular + " por un valor de " + valor);
            return true;
        } else {
            System.out.println("No es posible realizar la transferencia");
            return false;
        }
    }

No hace falta crear un tercer parámetro, con el segundo parámetro que en este caso es cuenta que sería la cuenta de destino de la transferencia ya puedes acceder y usar todos los atributos de esa cuenta: saldo, agencia, numero, titular así: cuenta.saldo, cuenta.agencia, cuenta.numero y cuenta.titular