이미 중첩 된 루프를 통해 반복하면서리스트를 반복하려고합니다. 아래 코드를 고려하십시오.리스트를 통한 중첩 반복 다음에 최종 삭제
ArrayList<Integer> list = new ArrayList<Integer>(); // add some values to it
for(int i : list) { // ConcurrentModificationException
Iterator iterator = list.iterator();
while(iterator.hasNext()) {
int n = iterator.next();
if(n % i == 0) {
iterator.remove();
}
}
}
위의 예는 ConcurrentModificationException이 발생합니다. 물론 요소를 제거하기위한 조건은 예제 일뿐입니다.
나는 뭔가를 놓친 것 같다. 하지만 예외를 throw하지 않고 Java에서과 동일한 것을 구현하는 루프를 어떻게 구성해야합니까?
질문 제목에 대한 제안 사항에 매우 만족합니다. – Zar