Olá galera estou com um problema tem um ArrayList que quando remove um item quando existe apenas 1 na lista ele gera uma Exception
Exception in thread “main” java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
at java.util.AbstractList$Itr.next(Unknown Source)
at Agenda.removerContato(Agenda.java:114)
at Agenda.controladora(Agenda.java:63)
at Agenda.main(Agenda.java:28)
segue o código do método
public void removerContato(String nome){
boolean validador = false;
boolean removerTodos = false;
int op = Integer.parseInt(JOptionPane.showInputDialog("O que deseja? " +
"\n1. Remover Todos Com o Nome: " + nome +
"\n2. Remover Um a Um"));
if(op == 1){
removerTodos = true;
}
//for para percorrer a lista
for(Contatos aux : lista){
if(aux.getNome().equals(nome)){
validador = true;
if(removerTodos){
lista.remove(aux);
}
else{
int opcao = JOptionPane.showConfirmDialog(null, "Remover o Contato Abaixo?" +
"\nNome: " + aux.getNome() +
"\nSobreNome: " + aux.getSobreNome() +
"\nEndereço: " + aux.getEndereco() +
"\nTelefone: " + aux.getTelefone() +
"\nData de Nascimento: " + aux.getDataNascimento());
//Se a opção for "YES"
if(opcao == 0){
System.out.println("Vou remover");
lista.remove(aux);
}
}
continue;
}
}
//Se não existe o contato
if(!validador){
JOptionPane.showMessageDialog(null, "Contato não Encontrado");
}
}
Valew galera