2.3 For 루프 대신 For-Each

    class LaunchChecklist {
    
        List<String> checks = Arrays.asList("Cabin Pressure", 
                "Communication", 
                "Engine");
    
        Status prepareForTakeoff(Commander commander) { 
            for (int i = 0; i < checks.size(); i++) {
                boolean shouldAbortTakeoff = commander.isFailing(checks.get(i)); 
                if (shouldAbortTakeoff) {
                    return Status.ABORT_TAKE_OFF; 
                }
            }
            return Status.READY_FOR_TAKE_OFF; 
        }
    }

    자료 구조를 순회하는 방법은 많습니다. 초보자가 흔히 배우는 방법이 반드시 가장 좋은 방법은 아닙니다.

    위 코드에서는 checks라는 List 자료 구조를 순회합니다. for 루프를 사용하며 인덱스 변수인 ichecks를 순회하죠.

    모든 C 스타일 프로그래밍 언어에서 사용하는 매우 전통적인 순회 방법입니다. 주로 배열에 쓰이지만 자바에서는 인덱싱된 컬렉션이면 어떤 종류와도 동작합니다(Set이나 Map은 빼고요). 현재 순회 중인 인덱스 i를 바로 쓸 수 있다는 장점이 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.