Olá, Ellyda! Tudo bem com você?
No código que você compartilhou, o laço while
está sendo utilizado para manter o programa rodando enquanto a condição opcao != 4
for verdadeira. Ou seja, enquanto a opção escolhida pelo usuário não for 4, o programa continuará exibindo o menu e aguardando uma nova entrada de opção.
Agora, sobre o System.out.println(menu);
, ele é responsável por exibir o menu para o usuário. A linha seguinte, opcao = leitura.nextInt();
, é onde o programa lê a opção inserida pelo usuário.
O bloco if (opcao == 2){...}
dentro do laço é executado se a opção escolhida for 2. Nesse caso, o programa exibe o saldo atual e depois lê um novo valor para o saldo.
Então, basicamente, o laço while
está sendo usado para controlar o fluxo do programa, permitindo que o usuário interaja com o menu várias vezes até que decida sair (opção 4). E o bloco if
dentro do laço é usado para executar ações específicas conforme a opção escolhida pelo usuário.
Aqui está um exemplo prático para ilustrar isso:
String menu = "1. Ver saldo\n2. Depositar\n3. Sacar\n4. Sair";
int opcao;
double saldo = 0.0;
Scanner leitura = new Scanner(System.in);
while (true) {
System.out.println(menu);
opcao = leitura.nextInt();
if (opcao == 1) {
System.out.println("Seu saldo é: " + saldo);
} else if (opcao == 2) {
System.out.println("Digite o valor a depositar:");
double valor = leitura.nextDouble();
saldo += valor;
} else if (opcao == 3) {
System.out.println("Digite o valor a sacar:");
double valor = leitura.nextDouble();
if (valor <= saldo) {
saldo -= valor;
} else {
System.out.println("Saldo insuficiente!");
}
} else if (opcao == 4) {
System.out.println("Saindo...");
break;
} else {
System.out.println("Opção inválida!");
}
}
Neste exemplo, o programa continuará rodando e exibindo o menu até que o usuário escolha a opção 4 (Sair). As opções 1, 2 e 3 realizam ações específicas (ver saldo, depositar, sacar), e qualquer outra opção informa ao usuário que a opção é inválida.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.