ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java | 반복문_For문
    JAVA/JAVA 2020. 1. 17. 16:33

    ★반복문

    특정 조건에 만족하는 동안 코드를 반복해서 실행하는 구문

    코드의 라인수가 많아지면 컴퓨터 실행속도가 저하되기 때문에
    반복되는 코드들을 반복문으로 묶어서 작성하면 효율적임


    ☆For문

    반복하는 횟수가 정해져 있는 경우에 사용

    반복 횟수를 관리할 수 있기 때문에 반복문 중에서 가장 많이 쓰임


    형식

    for(① 초기화식; ② 조건식; ④ 증감식){
        ③ Java Code ;
    }

    for문 흐름

    1. 초기화식 설정
    2. 조건식 체크
    3. 코드 실행
    4. 증감식
    5. 조건식 체크
    6. 코드 실행
    7. 증감식
    8. ..... 조건식이 거짓이 될 때까지 실행

    유형1_C++

    초기화식에서 초기값 변수를 선언하는 유형

    C++ 언어에서 사용하는 형식이라고 함

    public class ForTest {
        public static void main(String[] args) {
    
            for (int i = 1; i <= 3; i++) {
             // int i = 1; 로 초기값 변수 선언
                System.out.println("for문 연습" + i);
            }
            /*
            for문 연습1
            for문 연습2
            for문 연습3
            */
        }
    }

    유형2_C

    for문 밖에서 초기화식에 해당하는 변수를 선언하는 유형

    C언어에서 사용하는 형식이라고 함

    public class ForTest {
        public static void main(String[] args) {
            int k;
             // for문 밖에서 k 변수 선언
            for (k = 10; k > 7; k--) {
                System.out.println("Test" + k);
            }
             /*
             Test10
             Test9
             Test8
             */
        }
    }

    유형3_초기화식 생략

    초기화식 전체가 for문 밖에서 작성되어 for문 내부에서 초기화식 작성이 생략된 유형

    이미 변수가 다른 곳에서 초기화되어 중복으로 초기화할 필요가 없을 때 생략

    public class ForTest {
        public static void main(String[] args) {
            int k = 10;
             // 초기화식이 for문 밖에서 작성
    
            for (; k > 7; k--) {
            // 초기화식 생략
                System.out.println("Test" + k);
            }
             /*
             Test10
             Test9
             Test8
             */
        }
    }

    유형4_증감식 생략

    증감식을 생략할 수는 있지만 for문 안에 작성되어야 함

    증감식 연산이 복잡하거나 다른 연산 결과에 영향을 받는 경우 생략

    public class ForTest {
        public static void main(String[] args) {
    
            for(int c = 1; c <= 3; ) {
                System.out.println("3번 반복"+c);
                c++;
            }
             /*
             3번 반복1
             3번 반복2
             3번 반복3
             */
    
             // 무한 Loop
             c++;
            for(int c = 1; c <= 3; ) {
                System.out.println("3번 반복"+c);
            }
             /*
             증감식이 for문 밖에 작성되면
             for문에 영향을 미치지 못하기 때문에
             무한 루프가 발생함 
             */
        }
    }

    유형5_조건식 생략

    for문의 수행을 멈추기 위해 for문 내부에 if문으로 조건문을 작성하는 경우

    public class ForTest {
        public static void main(String[] args) {
            int sum = 0;
            for (int i = 0; ; i++) {
                sum += i;
                if (sum > 200)
                    break;
                // for문 내부에 if문으로 반복을 중단할 조건을 작성
            }
            System.out.println("sum: " + sum);
             // sum: 210
        }
    }

    유형6_요소 모두 생략

    모든 요소를 생략하고 무한 반복하는 경우에 사용

    while(true)와 동일하게 동작함

    public class ForTest {
        public static void main(String[] args) {
            for(;;) {
                System.out.println("무한 반복");
            }
            /*
            무한 반복
            무한 반복
            무한 반복
            ........
            */
        }
    }

    사용례_1부터 100까지의 합 구하기

    public class ForTest {
        public static void main(String[] args) {
            int sum = 0;
            for(int i = 1; i<=100; i++) {
                sum += i;
            }
            System.out.println("sum: "+sum);
             // sum: 5050
        }
    }

    소스코드 작성시 반복되는 구문을 작성할 때 가장 많이 사용되는 For문에 대해 살펴보았습니다.

    For문에도 여러가지 유형이 있고 아주 다양한 상황에서 활용된다고 하기 때문에

    For문에 대해 자세히 알아두고 반복 숙달 해두면 프로그램 작성시 도움이 될 것입니다.

     

     

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

    Java | 반복문_While, Do~While문  (0) 2020.01.17
    Java | 반복문_중첩 For문  (0) 2020.01.17
    Java | Switch~Case 선택문 추가  (0) 2020.01.17
    Java | 제어문_조건문, 선택문  (0) 2020.01.16
    Java | Casting 형변환  (0) 2020.01.16

    댓글

Designed by Tistory.