본문 바로가기
Programming/JAVA

이론_5. FOR 문 & 향상된 FOR

by yoon9i 2024. 3. 6.
/*
    <FOR 문>

    ◎ for 문 은 특정 동작(코드블럭)을 반복하고자 할때 사용한다.

        for (선언부; 조건부; 변수가감){
            //반복할 코드
        }

    - 'for' 문은 일반적으로 특정 정수형 변수의 값을 초기화하고 그 값을 가감하며 조건부의 조건이 참일때
      반복하게 하는 것이 일반적이다.
    - 선언부에서 선언된(혹은 초기화된) 변수의 값을 가감하여 조건부의 조건이 참일 때 반복할 코드를
      반복하여 실행한다.
    - 가령, 1부터 3까지의 정수를 출력하기 위해 아래와 같이 for 문을 작성할수 있다.
    - 변수 가감에는 전/후위 증감 연산자 혹은 복합 대입 연산자를 사용할수 있다.
    - 또한, 변수 가감은 별도의 구문으로 인식됨으로 전위 증감과 후위 증감에 따른 반복에 차이가 없다.

        for (int i = 1; i <= 3; i++) {
             System.out.println(i);
         }

        1.변수 i가 1로 선언 및 초기화 된다.
        2.조건부를 확인한다. 이때, 조건부의 조건은 i <= 3 인데 여기서 i가 1임으로 참 ( true )
         이 됨으로 for 코드 블럭을 1회 실행한다. (1 출력)
        3.변수를 가감한다. 위 코드에서 가감 코드는 i++임으로 i가 2가된다.
        4.조건부를 확인한다. 이때 조건부의 조건은 i <= 3 이고 i가 2임으로 참 ( true )이 됨으로
          for 코드 블럭을 1회 실행한다 (2 출력)
        5.변수를 가감한다. 위 코드에서 가감코드는 i++임으로 i가 3이 된다.
        6.조건부를 확인한다. 이때 조건부의 조건은 i <= 3 이고 여기서 i가 3임으로 참 ( true )이 됨으로
         for 코드 블럭을 1회 실행한다 (3 출력)
        7.변수를 가감한다. 위 코드에서 가감코드는 i++임으로, i가 4가 된다.
        8.조건부를 확인한다. 이 때 조건부의 조건은 i <= 3 이고 여기서 i가 4임으로 거짓 ( false )이 됨으로
         for 문을 빠져 나간다.( for 문 종료 )

    - 'break' 는 현재 실행중인 가장 가까운 for 문 등을 종료시키기 위해 사용하는 키워드이다.
    - 'continue' 는 현재 실행중인 반복 사이클을 생략하고 다음 사이클로 넘어가기 위해 사용하는 키워드이다.


    <향상된 FOR 문(Enhanced For)>

    ◎ 향상된 for 문은 일반 for 문과 달리 증감에 사용되는 변수 (주로 i) 를 사용하지 않고 배열을
      반복할 수 있어 IndexOutOfRangeException 등의 예외로 부터 벗어날 수 있는 이점이 있다.
    ◎ 마찬가지로, 용법이 일단 for 문에 비해 사용하기 쉬운 이점이 있다.
    ◎ 단, 증감에 사용되는 변수(i)를 직접 사용해야 할 때에는 향상된 for 문을 사용하지 못한다.
    ◎ 일반 for 문과 마찬가지로 break 및 continue 키워드를 이용할수 있다.

        int[] odds = {1, 3, 5, 7, 9};
        for (int i = 0; i < odds.length; i++) //순번
        {
            System.out.println(odds[i]);
        }

        위 일반 for 문을 아래와 같이 향상된 for 문으로 변경할 수 있다.

        ind[] odds = {1, 3, 5, 7,9};  //요소
        for (int odd : odds)
        {
            System.out.println(odd);
        }

        위 코드에서는 odds 정수 배열이 가지고 있는 정수인 요소 하나하나를 순서대로 정수인 (임시)변수 odd 에 대입하여
        반복하게 된다.

*/

'Programming > JAVA' 카테고리의 다른 글

이론_7. WHILE  (0) 2024.03.06
이론_6. SWITCH  (0) 2024.03.06
이론_4.IF  (0) 2024.03.06
이론_2.주석  (0) 2024.03.06
이론_1.변수,상수 및 타입  (0) 2024.03.06