Minha resolução! Aceito sugestões de como poderia ter deixado-a mais enxuta.
Olhando agora percebo que poderia ter deixado o código mais flexível transformando todos os dados do cliente em atributos :p
import java.util.Scanner;
public class DesafioBanco {
public static void main(String[] args) {
Scanner leitura = new Scanner(System.in);
double saldo = 2500;
System.out.println("""
******************************
Nome: André Humberto
Tipo de conta: Corrente
Saldo inicial: R$ %.2f
******************************""".formatted(saldo));
int opcaoSelecionada = 0;
while (opcaoSelecionada != 4) {
System.out.println("""
Escolha uma operação:
1 - Consultar saldo
2 - Receber transferência
3 - Realizar trasnfêrencia
4 - Sair
""");
opcaoSelecionada = leitura.nextInt();
switch (opcaoSelecionada) {
case 1:
System.out.println("Seu saldo é: R$ " + saldo);
break;
case 2:
System.out.println("Quanto você irá depositar/receber?");
saldo += leitura.nextDouble();
System.out.println("Valor recebido com sucesso! Saldo atualizado: R$ " + saldo);
break;
case 3:
System.out.println("Quanto você irá transferir?");
double valorTransferencia = leitura.nextDouble();
if (valorTransferencia > saldo){
System.out.println("Saldo insuficiente! Não foi possível realizar a transferência.");
break;
} else{
saldo -= valorTransferencia;
System.out.println("Transferêcia realizada com sucesso! Saldo atualizado: R$ " + saldo);
break;
}
case 4:
System.out.println("Operação finalizada!");
opcaoSelecionada = 4;
break;
default:
System.out.println("Opção inválida! Por favor, selecione uma das opções abaixo:");
}
}
}
}