My program throws ConcurrentModificationException
when I run the following piece of code. Through some research I found that an element in the list cannot be added or removed when in an iterator loop. What do I do now to remove an element in the List<Bean>
?
for (Iterator<Entry<String, List<Bean>>> iterator = dataMap.entrySet().iterator(); iterator.hasNext();) {
Entry<String, List<Bean>> entry = (Entry<String, List<Bean>>)iterator.next();
List<Bean> dateWiseValues = (List<Bean>) entry.getValue();
int j = 0;
for (Bean statBean : dateWiseValues) {
for (int i = 0; i < commonElements.size(); i++) {
if(statBean.getDate().equalsIgnoreCase(commonElements.get(i))) {
//remove the bean
entry.getValue().remove(j);
}
}
j++;
}
}