Olá Herberth, como vai?
Parece que o erro ocorreu após a adição do implements
na classe Titulo
. Para resolver esse problema, você deve garantir que não esteja modificando a lista (ou qualquer outra coleção) enquanto a está percorrendo.
Existem algumas abordagens comuns para evitar esse erro:
- Usar um Iterator para a iteração e modificar a lista usando o Iterator:
Iterator<Titulo> iterator = listaTitulos.iterator();
while (iterator.hasNext()) {
Titulo titulo = iterator.next();
if (algumaCondicao) {
iterator.remove(); // Remove o elemento usando o Iterator
}
}
- Criar uma cópia da lista antes de fazer modificações:
List<Titulo> copiaLista = new ArrayList<>(listaTitulos);
for (Titulo titulo : copiaLista) {
if (algumaCondicao) {
listaTitulos.remove(titulo);
}
}
- Usar estruturas de dados thread-safe, como CopyOnWriteArrayList, se você estiver trabalhando em um ambiente concorrente.
Certifique-se de revisar o código onde a modificação da lista ocorre após a adição do implements na classe Titulo e aplicar uma das soluções acima para evitar a ConcurrentModificationException.
Espero ter ajudado!
Caso tenha dúvidas, fico à disposição.
Abraços e bons estudos!