이름처럼 동시에 수정을 하다보니 일어나는 오류다.
public void delete(int articleId) {
for(Article a : list) {
if(a.getArticleId()==articleId) {
list.remove(a);
}
}
}
리스트를 순회하며 삭제하는 메서드를 실행하니 저 ConcurrenctModificationException이 떴다. 반복문을 도는 와중 삭제를 해버려 modCount에 수정이 생겨 일어난 오류로 보인다.
Iterator을 사용하니 해결이 됐다.
Iterator<Article> iter=list.iterator();
while(iter.hasNext()) {
Article a=iter.next();
if(a.getArticleId()==articleId) iter.remove();
}
https://hbase.tistory.com/322
이분의 글을 참고함. 감사합니다.