Olá, Matheus. Como vai?
Sua escolha técnica foi excelente! Utilizar a estrutura switch-case para menus interativos de terminal é considerada uma das melhores práticas no desenvolvimento de software.
Quando lidamos com opções fixas e predefinidas (como 1 - Consultar saldo, 2 - Depositar, 3 - Sacar), o switch-case não apenas torna o código muito mais limpo visualmente, mas também deixa a intenção do programador mais clara do que uma longa cadeia de if/else if/else.
Para complementar a sua ótima leitura sobre o fluxo do projeto, destaco alguns pontos fundamentais sobre o ecossistema de ferramentas que você combinou:
1. A combinação do while com o switch-case
Manter o menu rodando dentro de um laço while é o que garante que o seu programa se comporte como um aplicativo real, que só fecha quando o usuário escolhe explicitamente a opção "Sair".
O ponto mais importante que você deve ter percebido nessa dinâmica é o uso do comando break dentro de cada case. No Java, se esquecermos o break, o programa sofre um efeito chamado fall-through, executando o código do case selecionado e saindo "escorregando" por todos os outros case de baixo, mesmo sem atender à condição.
2. A Evolução do Switch Case no Java Moderno
Como você está criando a sua primeira aplicação em Java, vale a pena conhecer uma novidade fantástica das versões mais recentes da linguagem: as Switch Expressions (introduzidas a partir do Java 14).
No padrão tradicional que você usou, a sintaxe exige muitos break e repetições de código. O Java moderno permite escrever o mesmo menu de forma muito mais enxuta usando a sintaxe de seta (->), que já elimina a necessidade de digitar a palavra break. Veja que elegante:
switch (opcao) {
case 1 -> System.out.printf("Seu saldo atual é: R$ %.2f%n", saldo);
case 2 -> {
System.out.println("Digite o valor a depositar:");
double valor = leitura.nextDouble();
saldo += valor;
}
case 3 -> {
// lógica do saque e validação de saldo...
}
case 4 -> System.out.println("Encerrando o aplicativo. Até logo!");
default -> System.out.println("Opção inválida! Tente novamente.");
}
3. Formatação profissional com printf
Usar o printf para formatar o saldo bancário mostra que você teve cuidado com a experiência do usuário. Exibir valores monetários com duas casas decimais (%.2f) evita que o cliente veja valores estranhos no terminal, como um saldo de R$ 1050.3333333333.
Parabéns pela iniciativa de subir o projeto no GitHub e por comparar ativamente as diferentes abordagens estruturais. Esse hábito de analisar os prós e contras de cada comando é o que diferencia um codificador de um verdadeiro desenvolvedor.
Espero que possa ter lhe ajudado!