1
resposta

[Sugestão] O que posso melhorar nesse código

import java.util.Scanner;

public class Desafio { public static void main(String[] args) {

    String nome = ("Matheus Lima da Silva");
    String tipoConta = ("corrente");
    double saldoInical = 5000;
    int valorDigitado = 0;

    Scanner leitor = new Scanner(System.in);

    System.out.println("*******************************");
    System.out.println("Nome: " + nome);
    System.out.println("Tipo de conta: " + tipoConta);
    System.out.println("Saldo disponível: " + saldoInical);
    System.out.println("*******************************");


    String menu = ("""
            \n\n*******************************
            1- Consultar Saldo        
            2- Enviar pix
            3- Receber pix
            4- Sair             
            *******************************      
            
            """);

    while (valorDigitado != 4) {
        System.out.println(menu);
        valorDigitado = leitor.nextInt();


        if (valorDigitado == 1) {
            System.out.println("Seu saldo é: " + saldoInical);
        } else if (valorDigitado == 2) {
            System.out.println("Qual o valor que você deseja enviar?");
            double enviarPix = leitor.nextDouble();
            if (enviarPix > saldoInical) {
                System.out.println("Você não tem esse saldo disponível!");
                return;
            }
            System.out.println("Seu saldo agora é: " + (saldoInical -= enviarPix));

        } else if (valorDigitado == 3) {
            System.out.println("Qual o valor que você vai receber?");
            double receberPix = leitor.nextDouble();
            if (receberPix < 0) {
                System.out.println("Você tem que receber um valor maior do que 0");
                return;
            }
            System.out.println("Seu saldo agora é: " + (saldoInical += receberPix));

        }
        else if (valorDigitado == 4) {
            return;
        } else {
            System.out.println("Opção invalida! Digite outro número");
        }
    }
}

}

1 resposta

Olá Matheus! Tudo bem?

Seu código está bem estruturado, mas sempre há espaço para melhorias. Aqui estão algumas sugestões que podem ajudar a aprimorar seu programa:

  1. Fechamento do Scanner: É uma boa prática fechar o Scanner após o uso para liberar recursos. Você pode fazer isso usando leitor.close(); antes de sair do programa.

  2. Uso de constantes: Para melhorar a legibilidade e manutenção do código, você pode definir constantes para as opções do menu. Por exemplo:

    final int CONSULTAR_SALDO = 1;
    final int ENVIAR_PIX = 2;
    final int RECEBER_PIX = 3;
    final int SAIR = 4;
    
  3. Validação de entrada: Atualmente, se o usuário digitar algo que não seja um número inteiro, o programa lançará uma exceção. Você pode adicionar uma verificação para garantir que a entrada seja válida.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.