Bonjour,
Exception in thread "main" java.util.ConcurrentModificationException
Cette erreur signifie que tu essaies de modifier un objet (le plus souvent une liste ou tableau) à deux endroits "à la fois".
En effet, dans ton cas, tu fais ceci for(Piece p : lesPieces), ce qui signifie que tu veux parcourir tous les éléments de ta liste. Et dans cette boucle, tu fais this.lesPieces.add(pi);, ce qui signifie que tu ajoutes un éléments à ta liste. Mais du coup, comment doit se comporter ta boucle initiale ? Doit-elle prendre en compte l'ajout ? Si oui, que faire si l'élément aurait déjà du être parcouru (ajout en début de liste par exemple) ? Etc. C'est pour tous ces problèmes que l'exception est levée.
Pour résoudre ceci, une façon de faire est de commencer par copier ta liste, puis de parcourir la copie, et, lorsque nécessaire, de modifier la liste initiale.
Mako.
Partager