Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Sugestão] Projeto feito com o Switch Case.

FIz meu projeto Utilizando o Switch case para ficar menos verboso e um pouco mais organizado. Aceito sugestões ;)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner leitura = new Scanner(System.in);
        String nome = "Kaio Dantas";
        String tipoConta = "Corrente";
        double saldo = 1599.99;
        //OPC = 0 para que ele inicie o meu independente da opção seguinte.
        int opc = 0;

        System.out.println("*******************************");
        System.out.println("\nNome do cliente:" + nome);
        System.out.println("Tipo conta: " + tipoConta);
        System.out.println("Saldo atual: " + saldo );
        System.out.println("\n*******************************");

        String menu =
                """
                ** Digite sua opção **
                1- Consultar valor
                2- Transferir valor
                3- Depositar valor
                4- sair
                """;

        while(opc != 4){
            System.out.println(menu);
            opc = leitura.nextInt();;
        switch (opc){
            case 1 :
                System.out.println(String.format("O saldo disponivel é: R$ %.2f", saldo));
                    break;
            case 2 :
                System.out.println("Informe o valor que será transferido.");
                double valorAhSerTransferido = leitura.nextDouble();
                if (saldo > valorAhSerTransferido) {
                    saldo -= valorAhSerTransferido;
                    System.out.println("Valor foi transferido com sucesso.");
                } else {
                    System.out.println("Saldo insuficiente");
                }
                    break;
            case 3:
                System.out.println("Informe o valor que será depositado.");
                double valorAhSerDepositado = leitura.nextDouble();
                saldo += valorAhSerDepositado;
                System.out.println("O saldo foi depositado com sucesso.");
                break;
        }
            }
    }
}
2 respostas
solução!

Olá, Kaio! Tudo bem?

Parabéns pela iniciativa de utilizar o switch case no seu projeto, isso realmente pode tornar o código mais organizado e menos verboso, como você mencionou.

A sua implementação está correta e funciona bem para o que se propõe. No entanto, eu tenho uma pequena sugestão que pode melhorar ainda mais o seu código.

No seu switch case, você não está tratando o caso em que o usuário insere um número que não corresponde a nenhuma das opções do menu. Isso pode ser facilmente resolvido adicionando um default ao final do seu switch case. Veja como ficaria:

switch (opc){
    case 1 :
        System.out.println(String.format("O saldo disponivel é: R$ %.2f", saldo));
        break;
    case 2 :
        System.out.println("Informe o valor que será transferido.");
        double valorAhSerTransferido = leitura.nextDouble();
        if (saldo > valorAhSerTransferido) {
            saldo -= valorAhSerTransferido;
            System.out.println("Valor foi transferido com sucesso.");
        } else {
            System.out.println("Saldo insuficiente");
        }
        break;
    case 3:
        System.out.println("Informe o valor que será depositado.");
        double valorAhSerDepositado = leitura.nextDouble();
        saldo += valorAhSerDepositado;
        System.out.println("O saldo foi depositado com sucesso.");
        break;
    default:
        System.out.println("Opção inválida! Por favor, escolha uma opção entre 1 e 4.");
        break;
}

Com essa adição, se o usuário digitar um número que não esteja entre 1 e 4, o programa irá informá-lo que a opção é inválida, melhorando a experiência do usuário.

Bons estudos!

obrigado pela dica amaro !!! foi de grande utilidade, ficarei mais atento em sempre usar o default !!