Pessoal, boa tarde (ou noite).
Eu não estou conseguindo achar a razão para a seguinte saída:
No seguinte código:
import java.util.Scanner;
import java.util.ArrayList;
public class Controladora
{
public void mostrarOpcoes() {
System.out.println("\n\nOpcoes\n");
System.out.println("Cadastrar");
System.out.println("Listar");
System.out.println("Excluir");
System.out.println("Sair");
System.out.print("Digite a sua opcao > ");
}
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
ArrayList<Pessoa> lista = new ArrayList<Pessoa>();
String opcao;
Controladora controladora = new Controladora();
do {
controladora.mostrarOpcoes();
opcao = reader.nextLine();
opcao = opcao.toLowerCase();
if (opcao.equals("cadastrar")) {
int numero = 0;
System.out.println("1 - Funcionario");
System.out.println("2 - Cliente");
System.out.print("Digite a sua opcao > ");
numero = reader.nextInt();
if (numero == 1) {
Funcionario f = new Funcionario(1, "Joao da Silva");
lista.add(f);
}
else if (numero == 2) {
Cliente c = new Cliente(2, "Marco Antonio");
lista.add(c);
}
else
System.out.println("Nao existe essa opcao");
}
if (opcao.equals("listar")) {
for (Pessoa p: lista) {
System.out.println("CPF > " + p.getCpf());
System.out.println("Nome > " + p.getNome());
}
}
} while (!opcao.equals("sair"));
}
}
Onde pode ser?
Era pra sair só 1 vez e não 2, como saiu na segunda vez (e partir daí fica assim).

