1
resposta

[Sugestão] Switch Case

Resolvi o desafio da conta bancária utilizando switch case para controlar as opções do menu.

Achei que o switch deixou o código mais organizado para esse tipo de menu interativo, principalmente por trabalhar com opções numéricas fixas.

Também aproveitei para praticar:

  • while
  • Scanner
  • validação de saldo
  • atualização de valores
  • formatação com printf

Uma das partes que mais gostei foi entender melhor o fluxo do programa dentro do loop e como o saldo vai sendo atualizado a cada operação.

Comparei depois com a solução utilizando if/else e achei interessante perceber que as duas abordagens funcionam muito bem, mudando mais a organização do código do que a lógica principal.

Projeto no GitHub:
https://github.com/mmoura97/bank-account-java

1 resposta

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!