반응형
객체의 리스트 형태에서 조건에 맞는 객체를 삭제 하고 싶을때 for loop를 돌려서 삭제하는 경우가 있다.
아래의 코드는 오류가 나니 항상 주의해서 사용하여야 한다.
잘못된예 >> List<String> names = .... for (String name : names) { names.remove(name); } |
객체를 꺼내서 사용하는 대신 iterator 를 이용하여야 오류를 막을 수 있다.
List<String> names = .... Iterator<String> i = names.iterator(); while (i.hasNext()) { String s = i.next(); i.remove(); } |
해당 개념과 관련하여 업무상 실수를 한적이 있어 기록해둔다.
출처 : https://stackoverflow.com/questions/1196586/calling-remove-in-foreach-loop-in-java
반응형
'개발공부 > 개발TIP' 카테고리의 다른 글
toString 사용 시 NPE(NullPointException)방지 (0) | 2020.05.25 |
---|---|
Tomcat 설치 시 유의할점 -server.xml (0) | 2020.01.21 |
htttps 호출시 SSL 무시하여 오류안나게 하는법 (1) | 2019.01.03 |
tar 상대경로로 압축 및 절대경로로 압축된 tar 풀기 (0) | 2018.09.05 |
String, Stringbuilder, StringBuffer 차이점 (0) | 2018.08.13 |