J'ai le morceau de code suivant :
private String toString(List<DrugStrength> aDrugStrengthList) {
StringBuilder str = new StringBuilder();
for (DrugStrength aDrugStrength : aDrugStrengthList) {
if (!aDrugStrength.isValidDrugDescription()) {
aDrugStrengthList.remove(aDrugStrength);
}
}
str.append(aDrugStrengthList);
if (str.indexOf("]") != -1) {
str.insert(str.lastIndexOf("]"), "\n " );
}
return str.toString();
}
Quand j'essaie de l'exécuter, j'obtiens ConcurrentModificationException
Quelqu'un peut-il expliquer pourquoi cela se produit, même si le code est exécuté dans le même thread ? Et comment puis-je l'éviter ?