ArrayList or Vector 참조 중 Element 삭제하기
발생일: 2008.09.03 문제: for 문을 돌면서 ArrayList 나 Vector를 참조 중에, element를 삭제하려고 하니 Exception이 발생한다. 해결책: Iterator의 remove()를 사용한다!! 특히 vector의 경우는 동기화가 철저하게 되어 있기 때문에 for 문들 돌면서 element를 remove하면 exception이 발생한다 예) Vector v = new Vector(); ... for (One one : v) { ... v.remove(one); // 이렇게 하면 현재 v 벡터를 참조 중에 참조 중인 객체를 변경하려 하기 때문에 동기화에 어긋나 exception이 발생된다 } exception없이 동기화를 잘 처리하려면... Iterator를 사용하자. 예) f..
Daylogs/Java
2008. 9. 3. 14:55
공지사항