У меня есть два богатых picklists, чей выделенный раздел или целевые значения должны быть взаимоисключающими. Я сделал этот кусок кода: -Исключение одновременной модификации при попытке отредактировать выбранные элементы богатого списка выбора
LinkedHashMap<String,Boolean> includeRatePlans = getCampaign().getDataPackages();
LinkedHashMap<String, Boolean> excludeRatePlans = getCampaign().getSmsPackage();
for (String excludeRatePlan : excludeRatePlans.keySet()){
if(excludeRatePlans.get(excludeRatePlan)){
for (String includeRatePlan : includeRatePlans.keySet()){
if (includeRatePlans.get(includeRatePlan))
if (includeRatePlan.equals(excludeRatePlan)){
getCampaign().getSmsPackage().remove(excludeRatePlan);
}
}
}
}
Но я получаю java.util.ConcurrentModificationException
Ну да, вы удаляете элементы из коллекции, итерации по этой коллекции. Либо используйте итератор напрямую, либо создайте список элементов для удаления, а затем удалите их все потом. –