Olá.
Meu metodo de inclusão é o seguinte.
Método cadastroPaciente da classe interface
private static void cadastroPaciente()
{
try
{
String nome;
String endereco;
String sexo;
int idade;
String cpf;
String telefone;
String diagnostico;
String tratamento;
int codigoTratamento;
String profissionalResponsavel;
String especialidade;
Cadastro cadastro = new Cadastro();
Scanner entrada = new Scanner(System.in);
System.out.println("\nCADASTRO DE PACIENTE:\n");
System.out.print("Nome: "); nome = entrada.nextLine().trim();
System.out.print("Endereço: "); endereco = entrada.nextLine().trim();
System.out.print("Sexo: "); sexo = entrada.nextLine().trim();
System.out.print("Idade: "); idade = Integer.parseInt(entrada.nextLine().trim());
System.out.print("CPF (formato [CPF removido]): "); cpf = entrada.nextLine();
while(cadastro.validaCpf(cpf) == false || cpf == null)
{
System.out.println("Cpf inválido, verifique os pontos e/ou hífens e tente novamente!");
cpf = entrada.nextLine();
}
System.out.println("Telefone (formato 0000-0000): "); telefone = entrada.nextLine().trim();
while(cadastro.validaTelefone(telefone) == false)
{
System.out.println("Telefone inválido, verifique os dados e tente novamente!");
telefone = entrada.nextLine();
}
System.out.print("Diagnóstico: "); diagnostico = entrada.nextLine().trim();
System.out.print("Tratamento: "); tratamento = entrada.nextLine().trim();
System.out.print("Código do tratamento: "); codigoTratamento = Integer.parseInt(entrada.nextLine().trim());
System.out.print("Dentista responsável: "); profissionalResponsavel = entrada.nextLine().trim();
System.out.print("Especialidade: "); especialidade = entrada.nextLine().trim();
Paciente objPaciente = new Paciente(nome, endereco, sexo, idade, cpf, telefone, diagnostico, tratamento, codigoTratamento, profissionalResponsavel, especialidade);
cadastro.incluirPaciente(objPaciente);
}
catch (Exception e)
{
e.getMessage();
}
}
método incluiPaciente da classe Cadastro
public void incluirPaciente(Paciente objPaciente) throws SisDenException
{
Scanner digita = new Scanner(System.in);
for(Paciente obj : listaPacientes)
{
if(obj.getCpf().equals(objPaciente.getCpf()))
{
throw new SisDenException("Paciente já cadastrado, confira os dados e tente novamente!");
}
}
listaPacientes.add(objPaciente);
System.out.println("\nPaciente cadastrado com sucesso, pressione qualquer tecla para continuar!");
digita.nextLine();
}
Eu consigo incluir novos pacientes e armazeno nos ArrayLists e no método de consulta por nome adicionei um if para testar se a ArrayList esta vazia, mas sempre que faço a consulta, agora ela acusa que esta vazia.
Tentei incluir um paciente exatamente igual a um ja cadastrado e o programa aceitou, será que nao esta incluindo no ArrayList??
Abraços.