[Java] 제어문(2/2) - 반복문

전우석·2024년 3월 18일

Java

목록 보기
6/24

제어문(Control Flow Statement)

자바 프로그램은 main 메소드로부터 시작되어 위에서부터 아래로 차례대로 실행된다.
이러한 제어 흐름을 개발자가 원하는 분기로 바꿀 수 있도록 하는 것이 제어문이다.

반복문(Loop Statement)

  • 특정 조건에 해당하는 동안 코드블럭을 반복 실행하는 제어문

for 반복문

  • 특정 변수를 설정하고, 그 변수가 조건에 해당하는 동안 실행문을 반복한다.
  • 증감부의 존재로 횟수가 정해져 있는 반복문 작성에 사용된다.
    // for 반복문
    for ({선언부}, {조건부}, {증감부}) {
    		{실행부}
    }
    
    // for 반복문 예제
    for (int i = 1; i < 10; i++) {
    		System.out.printf("- - %d단 - - \n", i);
    		for (int j = 1; j < 10; j++) {
    				System.out.printf("%d * %d = %d\n", i, j, i * j);
    }
  • for 반복문은 선언부, 조건부, 증감부로 이루어져 있다.
    1. 선언부(Initialization)
      • for문 진입 시에 한 번 실행되는 초기화 부분
      • for문에서 사용할 변수를 초기화하는 부분이다.
    2. 조건부(Condition)
      • 반복문 변수의 조건을 검사하는 부분
      • 조건이 true인 경우 반복문이 실행되며, 조건이 false가 되면 반복문이 종료된다.
    3. 증감부(Increment/Decrement)
      • 각 반복 분기 후에 실행되는 부분, 반복문에서 사용하는 변수를 증감시킨다.
      • 이 부분을 통해 for 문에서 사용하는 변수가 조건을 벗어나게 하여 반복을 종료할 수 있다.
    4. 실행부
      • 반복하고자 하는 코드를 작성하는 부분이다.
      • 증가 또는 감소하는 반복문 변수를 통해 여러 가지 기능을 구현할 수 있다.

while 반복문

  • 특정 조건을 만족하는 동안 코드 블록 안의 내용을 반복한다.
  • 종료 조건이 명확히 정해져있지 않기 때문에 특정 조건(사용자 입력 등)을 기다리며 반복해야 할 때 사용된다.
    // while 반복문
    while ({조건식}) {
    		{실행문}
    }
    
    // while 반복문 예제
    while (true) {
    	...
    		if (input1.equals(answer)) {
    			System.out.println("정답입니다. 다음 문제로 넘어갑니다.");
    		} else {
    			System.out.println("오답입니다. 처음부터 다시 시작합니다.");
    			continue;
    		}
    	...
    	}
  • do-while 반복문
    • while문과 비슷하지만, 조건 먼저 판별 후 실행하는 while문과 다르게, 실행 후 조건을 판별하고, 다시 실행할지 여부를 결정한다.

      // do-while 반복문
      do {
      		{실행문}
      } while ({조건식})
  • continue
    • 해당 분기를 종료하고, 다음 분기를 시작한다.(skip)
      • if문과 함께 사용되며, 특정 조건에 해당되면 새로운 분기를 시작한다.
  • break
    • while문에서 많이 사용한다.(무한루프문)
    • 특정 조건에 해당하면 해당 반복문을 종료한다.(end)
      • if문과 함께 사용되며, 특정 조건에 해당되면 반복문을 종료한다.

0개의 댓글