JAVA

자바 반복문 — 똑같은 일 여러 번(FOR·WHILE)

PANCO_IT
#자바#JAVA#for문#while

위에서 내려다본 나선 계단 — 반복을 상징하는 이미지

이미지 출처: Pexels · Pexels License (https://www.pexels.com/photo/19823767/)

같은 문장을 100번 출력해야 한다면, println을 100줄 쓸까요? 그럴 필요 없습니다. 똑같은 일을 여러 번 시키는 것이 오늘의 주제, 반복문입니다.

while — 조건이 참인 동안 계속

while은 괄호 안 조건이 참인 동안 블록을 반복합니다.

int i = 0;
while (i < 3) {
    System.out.println("안녕하세요");
    i++;               // i를 1씩 늘려 언젠가 조건이 거짓이 되게
}
// 안녕하세요 3번 출력

쉽게 — while은 "조건이 만족되는 동안 계속 돌아라"입니다. 물이 끓을 때까지 불을 켜 두는 것과 같습니다. 언젠가 멈추려면 조건을 거짓으로 만들 장치(i++)가 반드시 있어야 합니다.

for — 횟수가 정해졌을 때

몇 번 돌지 아는 경우엔 for가 깔끔합니다. 시작·조건·증감을 한 줄에 모읍니다.

for (int i = 1; i <= 5; i++) {
    System.out.println(i + "번째");
}
// 1번째 ~ 5번째 출력

괄호 안 세 부분은 이렇게 읽습니다.

부분
시작int i = 1i를 1부터
조건i <= 5i가 5 이하인 동안
증감i++한 번 돌 때마다 1씩

쉽게 — for는 "1번부터 5번까지 순서대로"라고 횟수를 못 박아 두는 반복입니다. 1부터 n까지 합 구하기처럼 정해진 범위를 훑을 때 제격입니다.

break와 continue — 멈추기, 건너뛰기

반복 도중 흐름을 바꾸는 두 명령입니다.

for (int i = 1; i <= 10; i++) {
    if (i == 5) break;        // i가 5면 반복을 즉시 끝냄
    if (i % 2 == 0) continue; // 짝수면 이번 회차만 건너뜀
    System.out.println(i);    // 1, 3 출력
}
  • break — 반복문을 완전히 빠져나감
  • continue — 이번 회차만 건너뛰고 다음 회차로

단골 함정 — 무한루프

반복을 멈추려면 조건이 언젠가 거짓이 되어야 합니다. 증감식을 빼먹으면 조건이 영원히 참이라 끝없이 돕니다.

int i = 0;
while (i < 3) {
    System.out.println("멈추지 않아요");
    // i++;  ← 이걸 빼먹으면 i가 계속 0이라 영원히 반복!
}

무한루프 비교: 증감식 없으면 i가 계속 0이라 영원히 반복, i++ 있으면 언젠가 조건이 거짓이 되어 정상 종료

조건을 거짓으로 바꿀 장치(i++)가 있어야 멈춥니다.

규칙 — 반복문 안에는 조건을 거짓으로 바꿀 장치(보통 i++)가 반드시 있어야 합니다. 프로그램이 멈추지 않고 화면이 계속 쏟아진다면, 십중팔구 이 증감식을 빠뜨린 것입니다.

한 장 정리

상황문법
조건이 참인 동안while
횟수가 정해진 반복for
반복 즉시 종료break
이번 회차만 건너뛰기continue

이것만 기억하면 됩니다. while은 조건 동안, for는 정해진 횟수만큼 돕니다. 반드시 멈출 장치(증감식)를 넣어 무한루프를 피하고, break는 완전 종료, continue는 한 번 건너뛰기입니다.

미니 퀴즈

개념을 제대로 잡았는지 직접 풀어 봅니다. 정답은 눌러야 나옵니다.

미니 퀴즈

OX 2문제 + 4지선다 3문제


포켓코딩(JAVA1) 7편 · 예제 출처: 강사 개인 GitHub 저장소. 다음 편: (총정리) 기초 12문제로 복습.

PANCO_IT

IT 지식을 정리하는 개발자

관련 글