ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 제어문
    Java 2022. 7. 8. 22:30

    제어문과 제어 키워드를 사용하면 프로그램의 실행 순서를 다양한 방법으로 제어할 수 있다.

     

     

    제어문 종류

     

    1) 선택 제어문 ( if, swtich )

    2) 반복 제어문 ( for, while, do-while )

     

     

     

    switch

     

    - 점프 위치 변수값에 특정위치(case)로 이동해 구문을 실행하는 선택 제어문

    - 점프할 수 있는 위치는 'case 위치값:'으로 설정

     

     

     

    for문

     

    - 조건식이 생략됐을 경우

    // 조건식을 생략하면 컴파일러는 자동으로 true 입력 ( 무한 루프 )
    for( 초기식 ;      ; 증감식 ) {
    	실행구문;
    }

     

    - break를 이용한 무한 루프 탈출

    for(int i = 0;     ; i++){
    	if(i > 10){
        	break;
        }
        System.out.println(i)		// 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
    }

     

     

     

    do-while

     

    - 조건식이 참이면 다시 do 구문을 실행하고 거짓이면 제어문 탈출

    - while문은 조건식을 먼저 검사하므로 최소 반복 횟수는 0 (처음부터 조건식이 false일 때)이지만, 

      do-while문은 일단 실행한 후 조건식을 검사하므로 최소 반복 횟수는 1

     

     

     

    제어 키워드

     

    - break: 'if문을 제외한 가장 가까운 중괄호 ({ })을 탈출'

     

    for(int i = 0 ; i < 10 ; i++){
    	System.out.println(i);
        break;						// 반복문 탈출 실행
    }							// if문을 제외한 가장 가까운 중괄호 탈출

    -> 즉, for문의 반복 횟수와 상관없이 단 하나의 출력문만 실행되고 for문 종료

     

     

    - label을 이용한 이중 for문 탈출

     

    out:							// break out으로 탈출하는 중괄호
    for(int i = 0; i < 10; i++){
    	for(int j = 0; j < 10; j++){
        	if(j == 3)
            	break out;				// 레이블이 달린 반복문 탈출
        }
    }							// break out으로 탈출하는 중괄호

     

    - continue: 반복 제어문의 닫힌 중괄호(}) 역할하는 제어 키워드

                      -> 주로 반복 과정에서 특정 구문을 실행하지 않고 건너뛰고자 할 때 사용

     

     

     

    - continue Label을 이용해 이중 for문 내에서 여러 개의 반복문을 한 번에 건너뛰기

     

    POS1:			// 레이블 위치지정(coninue하고자 하는 반복문 앞에 레이블 표기)
    for(int i = 0; i < 5; i++){
    	for(int j = 0; j < 5; j++){
        	if(j == 3)
            	coninue POS1:	// POS1 레이블이 달린 반복문의 닫힌 중괄호 대체
        }
    }				// coninue POS1로 대체하는 중괄호

    -> i값이 0, 1, 2, 3, 4로 총 5회 반복하고, j 값이 0, 1, 2로 총 3회 반복. 즉, 총 15회 실행

    728x90

    'Java' 카테고리의 다른 글

    [Java] Set 성적관리 프로그램  (0) 2022.09.19
    [Java] ArrayList 성적관리 프로그램  (0) 2022.09.19
    [Java] 참조 자료형  (0) 2022.07.09
    [Java] 연산자  (0) 2022.07.08
    [Java] 자료형  (0) 2022.07.08
Designed by Tistory.