ConcurrentModificationException은 ArrayList가 순회(반복)되고 동시에 수정될 때 발생합니다. 이 문서에서는 이 예외를 처리하기 위한 모범 사례를 살펴보고 대체 접근 방식을 간략하게 설명합니다.
동시 수정 예외 방지
예외 발생을 방지하려면 다음 두 가지 옵션을 사용할 수 있습니다.
Iterator의 Remove 메서드 예:
길이가 있는 문자열을 제거하는 시나리오를 고려해보세요. ArrayList에서 5보다 큼:
<code class="java">List<String> list = new ArrayList<>(); ... for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) { String value = iterator.next(); if (value.length() > 5) { iterator.remove(); } }</code>
이 예에서는 반복자의 "제거" 메소드를 사용하여 원래 목록을 반복하는 동안 원본 목록을 안전하게 수정합니다.
위 내용은 ArrayList를 반복하고 수정할 때 ConcurrentModificationException을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!