1
resposta

Eu usei switch ao invés do if e else

import java.util.Scanner;

public class Desafio {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String nome = "Clark Kent";
        String tipoConta = "Corrente";
        double saldo = 1599.99;
        int opcao = 0;

        System.out.println(
                """
                 ***************************
                 Nome do cliente: """+nome+"""
                
                 Tipo da conta: """+tipoConta+"""
                
                 Saldo atual: """+saldo+"""
                
                ***************************
                """
        );
        System.out.println("""
                Digite sua opção
                1 - consultar saldo
                2 - transferir valor
                3 - receber valor
                4 - sair
                """);
        while(opcao != 4){
            System.out.print("> ");
            opcao = scanner.nextInt();

            switch (opcao){
                case (1):
                    System.out.println("O saldo atualizado é " + saldo);
                    break;
                case (2):
                    System.out.println("Qual o valor que deseja transferir");
                    System.out.print(">");
                    double valor = scanner.nextDouble();
                    if(valor > saldo){
                        System.out.println("Não há saldo para realizar a transferência");
                    }else{
                        saldo -= valor;
                        System.out.println("Novo saldo "+ saldo);
                    }
                    break;
                case (3):
                    System.out.println("Valor recebido: ");
                    System.out.print(">");
                    valor = scanner.nextDouble();
                    saldo += valor;
                    break;
                case (4):break;
            }
        }
    }
}
1 resposta

Olá, Daniel!

Pelo que entendi, você está com dúvidas sobre o uso do switch em vez do if e else no seu código em Java. Vou te explicar como funciona e como você pode utilizá-lo corretamente.

O switch é uma estrutura de controle que permite executar diferentes blocos de código com base no valor de uma variável. No seu caso, a variável é opcao.

No seu código, você utiliza o switch para verificar qual opção foi escolhida pelo usuário. Cada opção corresponde a um caso no switch. Por exemplo, se o usuário digitar 1, o código dentro do case 1 será executado. Se o usuário digitar 2, o código dentro do case 2 será executado, e assim por diante.

Dentro de cada case, você pode colocar o código que deseja executar para cada opção. Por exemplo, no case 1, você exibe o saldo atualizado. No case 2, você pergunta o valor a ser transferido e verifica se há saldo suficiente. No case 3, você pergunta o valor a ser recebido.

Caso nenhum dos casos seja correspondido, o código dentro do default será executado. No seu caso, você deixou o default vazio, o que significa que não há nenhuma ação definida para quando o usuário digitar uma opção inválida.

Uma sugestão para melhorar seu código seria adicionar uma mensagem de erro para opções inválidas. Você pode fazer isso adicionando um default no seu switch e exibindo a mensagem "Opção inválida" dentro dele.

Aqui está um exemplo de como você pode fazer isso:

switch (opcao) {
    case 1:
        System.out.println("O saldo atualizado é " + saldo);
        break;
    case 2:
        System.out.println("Qual o valor que deseja transferir?");
        double valor = scanner.nextDouble();
        if (valor > saldo) {
            System.out.println("Não há saldo para realizar a transferência");
        } else {
            saldo -= valor;
            System.out.println("Novo saldo: " + saldo);
        }
        break;
    case 3:
        System.out.println("Valor recebido: ");
        valor = scanner.nextDouble();
        saldo += valor;
        break;
    case 4:
        break;
    default:
        System.out.println("Opção inválida!");
        break;
}

Dessa forma, quando o usuário digitar uma opção inválida, a mensagem "Opção inválida" será exibida.

Espero ter ajudado! Bons estudos!