반응형
~ 릴리즈 1.5 이전
컬렉션 순회
for(Iterator i = c.iterator() ; i.hasNext();){
doSomething((Element) i.next());
}
배열 순회
for(int i = 0 ; i < a.length ; i++){
doSomething(a[i]);
}
릴리즈 1.5 ~ 부터
for(Element e : elements){
doSomething(e);
}
For-each는 컬렉션, 배열 그리고 Iterable 인터페이스를 구현하는 객체를 순회할 수 있다.
public interface Iterable<E> {
//이 Iterable안에 있는 원소들에 대한 반복자 반환
Iterator<E> iterator();
}
For-each는 다음과 같은 경우에는 적용할 수 없다.
1. Filtering
· 특정한 우너소를 삭제할 필요가 있다고 할 때
2. 변환
· 리스트나 배열을 순회하다가 그 원소 가운데 일부, 또는 전부의 값을 변경해야 할 때
3. 병렬 순회
· 컬렉션을 병렬적 순회할때 첨자를 명시적으로 제어해야 할 때
반응형
'IT > Programming' 카테고리의 다른 글
<Effective Java> RULE 44 모든 API요소에 문서화 주석을 달라 (0) | 2023.04.26 |
---|---|
<Effective Java> RULE 45 지역 변수의 유효범위를 최소화하라 (0) | 2023.04.26 |
<Effective Java> RULE 47 어떤 라이브러리가 있는지 파악하고, 적절히 활용하라 (0) | 2023.04.26 |
<Effective Java> RULE 48 정확한 답이 필요하다면 float와 double은 피하라 (0) | 2023.04.26 |
<Effective Java> RULE 49 객체화된 기본 자료형 대신 기본 자료형을 이용하라 (0) | 2023.04.26 |