Les comparto una parte de mi código, la otra parte estará más abajo porque es muy largo jeje, tengan toda la libertad de darme feedback, lo aceptaré con mucha humildad.
import java.text.NumberFormat;
import java.util.Locale;
import java.util.Scanner;
public class CuentaBancaria {
public static void separador(int tipo) {
switch (tipo) {
case 1 -> System.out.println("===========================================================================");
case 2 -> System.out.println("\n===========================================================================");
case 3 -> System.out.println("===========================================================================\n");
case 4 -> System.out.println("\n===========================================================================\n");
}
}
public static final int CONSULTAR = 1;
public static final int RETIRAR = 2;
public static final int DEPOSITAR = 3;
public static final int CONFIRMAR_SALIR = 4;
public static final int SALIR = 9;
public static void main(String[] args) {
Scanner entradaDatos = new Scanner(System.in);
int saldo = 30000;
int eleccionUsuario = 0;
int montoUsuario;
int siNo;
Locale colombia = Locale.of("es", "CO");
NumberFormat formatoCOP = NumberFormat.getCurrencyInstance(colombia);
String cliente = "Cristiano Ronaldo";
String tipoCuenta = "Ahorro";
String informacionCliente = """
Cliente: %s
Cuenta: %s
""".formatted(cliente, tipoCuenta);
String informacionSaldo = "Saldo:" + formatoCOP.format(saldo);
System.out.println("\n================= Información de la cuenta =================");
System.out.print("\n" + informacionCliente);
System.out.print(informacionSaldo + "\n");
separador(4);
while (eleccionUsuario != CONFIRMAR_SALIR) {
System.out.println("""
================= MENÚ PRINCIPAL =================
1 - Consultar Saldo
2 - Retirar
3 - Depositar
9 - Salir
""");
separador(3);
try {
eleccionUsuario = entradaDatos.nextInt();
} catch (java.util.InputMismatchException e) {
separador(4);
System.out.println("Entrada Invalida. Por favor, escriba solo números");
separador(2);
entradaDatos.nextLine();
continue;
}
if (eleccionUsuario != CONSULTAR && eleccionUsuario != RETIRAR && eleccionUsuario != DEPOSITAR && eleccionUsuario != SALIR) {
separador(4);
System.out.println("Opción no disponible, seleccione un número correcto");
separador(4);
continue;
}
if (eleccionUsuario == 9) {
separador(4);
System.out.println("¿Esta seguro que desea salir? 1 = SI, 2 = NO");
separador(4);
try {
siNo = entradaDatos.nextInt();
} catch (java.util.InputMismatchException e) {
entradaDatos.nextLine();
separador(4);
System.out.println("Entrada inválida, regresando al menú...");
separador(4);
continue;
}
while (siNo != 1 && siNo != 2) {
separador(4);
System.out.println("Opción no disponible, vuelva a intentar");
separador(4);
System.out.println("¿Esta seguro que desea salir? 1 = SI, 2 = NO");
separador(4);
siNo = entradaDatos.nextInt();
}
separador(4);
if (siNo == 1) {
eleccionUsuario = CONFIRMAR_SALIR;
} else {
continue;
}
}