Quando joguei na IA, ela disse que havia uma forma mais limpa de fazer esse código utlizando "case". Mas esse foi o resultado utlizando While, If e else.
import java.util.Scanner;
//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
public static void main(String[] args) {
Scanner Leitura = new Scanner(System.in);
String nome = "Luiz Daniel Martins";
String tipoConta = "Corrente";
double saldoAtual = 2500.00;
double deposito = 0;
double transferencia = 0;
String dadosCliente = """
--------------------------
Dados iniciais do cliente:
Nome: %s
Tipo conta: %s
Saldo atual: R$ %.2f
--------------------------""".formatted(nome, tipoConta, saldoAtual);
String operacoes = """
Operações:
1. Consultar saldos
2. Depositar valor
3. Transferir valor
4. Sair
""";
String txtDeposito = "Digite o valor que você vai depositar: ";
String txtTransferir = "Digite o valor que desjea transferir: ";
int operacaoEscolhida = 0;
System.out.println(dadosCliente + "\n" + operacoes);
operacaoEscolhida = Leitura.nextInt();
while (true) {
if (operacaoEscolhida == 1) {
System.out.println("Saldo atual: R$ " + saldoAtual);
System.out.println(operacoes);
operacaoEscolhida = Leitura.nextInt();
} else if (operacaoEscolhida == 2) {
System.out.println(txtDeposito);
deposito = Leitura.nextDouble();
if (deposito <= 0) {
System.out.println("Digite um valor válido para depositar!\n " + txtDeposito);
} else {
saldoAtual = saldoAtual + deposito;
System.out.println("Depósito realizado com sucesso!");
System.out.println(operacoes);
operacaoEscolhida = Leitura.nextInt();
}
} else if (operacaoEscolhida == 3) {
System.out.println(txtTransferir);
transferencia = Leitura.nextDouble();
if (transferencia > saldoAtual) {
System.out.println("Você não tem saldo suficiente para essa transferência. Tente novamente.");
System.out.println(txtTransferir);
} else {
saldoAtual = saldoAtual - transferencia;
System.out.println("Transferência realizada com sucesso!");
System.out.println(operacoes);
operacaoEscolhida = Leitura.nextInt();
}
} else if (operacaoEscolhida == 4) {
System.out.println("Encerrando o programa...");
break;
}else{
System.out.println("Opção inválida, digite uma opção válida.");
System.out.println(operacoes);
operacaoEscolhida = Leitura.nextInt();
}
}
}
}