public class Desafio {
public static void main(String[] args) {
var bandera = false;
Usuario usuario1 = new Usuario("Kevin","Corriente",1666.99);
System.out.println(usuario1.toString());
var entrada = new Scanner(System.in);
while(!bandera){
var opcion = 0;
var entradaMSald = 0.0;
System.out.println("**Escriba el número de la opción deseada**");
System.out.println("""
1 - Consultar saldo
2 - Retirar
3 - Depositar
9 - Salir
""");
opcion = entrada.nextInt();
switch (opcion){
case 1:
System.out.println(usuario1.consultarSaldo());
break;
case 2:
System.out.print("Ingrese saldo a retirar: ");
entradaMSald = entrada.nextDouble();
entrada.nextLine();
System.out.println(usuario1.retirarSaldo(entradaMSald));
break;
case 3:
System.out.print("Ingrese saldo a depositar: ");
entradaMSald = entrada.nextDouble();
entrada.nextLine();
System.out.println(usuario1.depositarSaldo(entradaMSald));
break;
case 9:
System.out.println("Finalizando el programa. Muchas gracias por usar nuestro servicios");
bandera = true;
break;
default:
System.out.println("Opcion no valida");
break;
}
}
}
}
public class Usuario implements opcionesBancoI {
private String nombreUser;
private String tipoCuenta;
private double saldoCuenta;
public Usuario() {
}
public Usuario(String nombreUser, String tipoCuenta, double saldoCuenta) {
this.nombreUser = nombreUser;
this.tipoCuenta = tipoCuenta;
this.saldoCuenta = saldoCuenta;
}
public String getNombreUser() {
return nombreUser;
}
public void setNombreUser(String nombreUser) {
this.nombreUser = nombreUser;
}
public String getTipoCuenta() {
return tipoCuenta;
}
public void setTipoCuenta(String tipoCuenta) {
this.tipoCuenta = tipoCuenta;
}
public double getSaldoCuenta() {
return saldoCuenta;
}
public void setSaldoCuenta(double saldoCuenta) {
this.saldoCuenta = saldoCuenta;
}
@Override
public String toString() {
final StringBuilder sb = new StringBuilder("***********************************").append('\n');
sb.append("\nNombre del cliente: ").append(nombreUser).append('\n');
sb.append("Tipo de Cuenta: ").append(tipoCuenta).append('\n');
sb.append("Saldo disponible: ").append(saldoCuenta).append('$').append('\n');
sb.append("\n***********************************");
return sb.toString();
}
@Override
public String consultarSaldo() {
return "Tu saldo es: "+this.saldoCuenta;
}
@Override
public String retirarSaldo(double retirarS) {
String mensaje="Saldo insuficiente";
if(this.saldoCuenta > retirarS){
mensaje = "Saldo nuevo es: "+ (this.saldoCuenta-=retirarS) ;
}
return mensaje;
}
@Override
public String depositarSaldo(double depositarS) {
String mensaje = "Tu saldo actualizado es: "+(this.saldoCuenta += depositarS);
if(depositarS<0){
mensaje = "Errror al depositar! Saldo negativo";
}
return mensaje;
}
}
public interface opcionesBancoI {
String consultarSaldo();
String retirarSaldo(double retirarS);
String depositarSaldo(double depositarS);
}
https://github.com/Kaneko2211/appBancoAluraJava.git