☕Java/☕입문편

[Java 6강] 반복문 - for, while, do-while 완벽 가이드

itstory(Booho) 2024. 12. 8. 15:38
728x90

🚀 반복문이란?

반복문(Loop Statement)은 특정 조건이 만족될 때까지 같은 코드를 반복 실행하는 명령어입니다.

 

반복문의 주요 특징

  • 코드 재사용: 동일한 작업을 여러 번 수행할 때 유용함
  • 유지보수 용이: 반복되는 코드 줄 수 줄이기
  • 반복 횟수 제어 가능: 특정 조건을 만족할 때까지 실행 가능

예제: 예를 들어, "안녕하세요"를 100번 말하는 프로그램을 작성한다고 가정할 때, 하나씩 입력하기보다는 반복문을 활용하면 쉽고 효율적으로 해결할 수 있습니다.

자바에는 세 가지 주요 반복문이 있습니다.

  • for문
  • while문
  • do-while문

🔄 for문

for문은 특정 조건이 만족되는 동안 코드 블록을 반복 실행하는 제어문입니다.

 

1️⃣ 기본 구조

for (초기화; 조건식; 증감식) {
    // 반복 실행할 코드
}

 

구성 요소:

  • 초기화: 반복문에 사용될 변수를 초기화 (한 번만 실행됨)
  • 조건식: 반복을 계속할지 결정하는 조건 (참이면 반복)
  • 증감식: 반복이 끝난 후 변수 값을 변경

2️⃣ 예제 1: 1부터 9까지 출력하기

public class Test {
    public static void main(String[] args) {
        for ( int i = 0 ; i < 10 ; i= i+1) {
            // i 를 0으로 정한다
            // i 가 10보다 작은가?
            // i는 i + 1이다.
            System.out.println(i);
        }
    }
}

출력 결과

  위의 예제를 보면, for문에서 i=0으로 선언 및 초기화를 하며,

  조건식이 i<10로 i가 0~9일 때까지 총 10번 반복하게된다. 출력 결과로는 "증감된 i 값이 출력된다.

 

 

3️⃣ 예제 2: 10보다 작은 짝수값만 출력하기

public class Test {
    public static void main(String[] args) {
        for ( int i = 0 ; i < 10 ; i= i+2) {
            // i 를 0으로 정한다
            // i 가 10보다 작은가?
            // i는 i + 2이다.
            System.out.println(i);
        }
    }
}

출력 결과

 

위의 예제를 보면, for문에서 i=0로 선언 및 초기화를 하며, 조건식이 i<10 으로 i가 2~10일 때까지 총 5번 반복하게된다.

  (왜냐하면 증감식에서 i가 2씩 증가되므로 i=0, 2, 4, 6, 8이 된다.)

 

4️⃣ 예제 3: 1부터 100까지 합 구하기

public class Test {
    public static void main(String[] args) {
        int total = 0;
        for ( int i = 1 ; i <= 100 ; i= i+1) {
            System.out.println(i);
            // total 은 0으로 정한다
            // i 를 1로 정한다
            // i 가 100보다 작은가?
            // i를 보여준다
            // total은 total+i 이다.
            // total값을 보여준다.
            // i는 i + 1이다.
            // i 가 100보다 작은가?
            // i를 보여준다
            // total은 total+i 이다.
            // total값을 보여준다.
            total = total + i;
            System.out.println(total);
        }
    }
}

출력 결과:

 

 

5️⃣ 예제 4: 3의 배수는 '짝!' 출력

public class Test {
    public static void main(String[] args) {
        for (int i =1; i<10 ;i++) {
            if (i % 3 == 0) {
                // 자바에서 % 기호는 산술 연산자로 사용되며,
                // 나눗셈의 나머지를 구합니다
                // 예) 10 나누기 3한 후 남는 숫자는 1
                // 9나누기 3을 할 경우 남는 숫자 없음( 0 )
                System.out.println("짝!");
                // 남는 숫자가 없는 경우 ( 0일때) 짝!
            } else {
                System.out.println(i);
                // 남는 숫자가 있을경우 i 로 표시
            }
        }
    }
}

출력 결과:

 

🔄 while문

자바의 while문은 특정 조건이 참인 동안 코드 블록을 반복해서 실행하는 제어문입니다. 

아주 간단히 설명하자면, "~하는 동안 ~를 계속해"라고 생각하면 됩니다.

while문의 기본 구조는 다음과 같습니다

 

1️⃣ 기본 구조

while (조건식) {
    // 반복할 코드
}

작동 방식:

  1. 조건식을 평가 (참이면 실행)
  2. 코드 실행 후 다시 조건 확인
  3. 조건이 거짓이 될 때까지 반복

2️⃣ 예제: 1부터 5까지 출력하기

public class LoopTest {
    public static void main(String[] args) {
//        반복문 와일
//        3
//        4
//        5

           int i = 1;    //← 1을 I 라고 칭한다
           while (i < 6){   // ← 'while' 반복 해라 (i < 6) 이 조건이 거짓일 때 까지 1이 6보다 작냐?
               System.out.println(i); // ← 질문에 답이 맞으면 i를 보여줘라
               i = i + 1 ; // ← 보여준 i 에 1을 더한 갑을 아이로 저장 하고  while (i < 6){ 이동 해서 실행해라
                    }


    }
}

출력 결과

이 코드는 i가 6 이하인 동안 계속해서 i를 출력하고 1씩 증가시킵니다.
while문은 반복 횟수가 정해지지 않았거나, 특정 조건이 만족될 때까지 계속 반복해야 할 때 유용합니다. 

하지만 조건식이 항상 참이 되지 않도록 주의해야 합니다. 

그렇지 않으면 무한 루프에 빠질 수 있습니다.

 

🔄 do-while문

do-while문은 "한 번 해보고, 계속할지 말지를 결정하는" 반복문입니다.
즉, 먼저 코드를 실행하고, 그 다음에 조건을 확인하는 방식입니다.

 

1️⃣ 기본 구조

do {
    // 실행할 코드
} while (조건식);

작동 방식
  한 번 실행하기 : do 블록 안의 코드를 먼저 한 번 실행합니다.
  조건 확인하기 : 그 다음에 while 뒤에 있는 조건을 확인합니다.
  계속할지 결정하기 : 조건이 참(참이면 계속 실행)이라면 다시 do 블록으로 돌아가서 코드를 실행합니다.

                                       조건이 거짓이면 반복을 멈춥니다.

 

 

2️⃣ 예제 1: 조건이 거짓일 경우에도 1회 실행 (이해하기 쉽도록 2가지 예시)

public class Test {
    public static void main(String[] args) {
        int i = 1;
        do {
            System.out.println(i);
            i++;
        } while (i > 5);  // 조건 i 는 5보다 커?
    }
}

출력 결과

위의 예제와 같이 조건이 거짓이지만 1번의 출력이 이뤄집니다.

 

 

3️⃣ 예제 2: 조건이 참일 때 반복 실행

public class Test {
    public static void main(String[] args) {
        int i = 1;
        do {
            System.out.println(i);
            i++;
        } while (i < 5);  // 조건 i 는 5보다 작아?
    }
}

출력 결과

🎯 정리 및 다음 강의 예고

✅ 이번 강의에서 배운 내용:

  1. 반복문 개념과 종류
  2. for문, while문, do-while문 사용법
  3. 각 반복문별 예제 및 실행 결과 분석

📌 다음 강의: [Java 6강] 메서드와 클래스 개념

728x90
반응형