ki-sd 님의 블로그
[2026-03-10] 반복문의 핵심 메커니즘 - for와 while 본문
1. for문 (횟수가 명확한 반복 체계)
- 구조: for (초기화; 조건식; 증감식) { 실행문 }
- 특징: 반복을 제어하는 인덱스 변수의 시작과 끝이 한 줄에 명시되어 있어 흐름을 파악하기 매우 용이하다. 배열이나 컬렉션처럼 크기가 정해진 데이터를 순차적으로 탐색할 때 가장 직관적인 구조다.
- 내부 동작: 초기화는 단 한 번만 실행되며, 이후 조건식 검사 -> 실행문 -> 증감식의 사이클이 조건식이 false가 될 때까지 순환한다.
2. while문 (조건 기반의 유동적 반복)
- 구조: while (조건식) { 실행문 }
- 특징: 반복 횟수가 예측 불가능하거나, 특정 상태가 변경될 때까지 무한히 대기해야 하는 경우(예: 사용자 입력 대기, 네트워크 연결 유지, 파일 끝 도달 확인 등)에 주로 사용된다.
- do-while문과의 비교: 조건 검사를 나중에 수행하는 do-while문은 최초 1회의 실행을 무조건 보장해야 하는 로직(예: 메뉴 최초 출력 후 입력 대기)에 강력한 이점을 가짐을 확인했다.
3. 무한 루프 제어와 분기(break, continue)
- 조건식을 잘못 설정하여 끝없이 실행되는 무한 루프(Infinite Loop)는 시스템 메모리와 CPU 점유율을 폭증시키는 치명적인 에러다.
- break: 반복문 내부에서 특정 조건을 만족했을 때 루프 블록 자체를 즉시 파괴하고 탈출한다.
- continue: 아래의 실행문을 무시하고 곧바로 다음 회차의 조건식(또는 증감식)으로 점프한다. 특정 데이터를 스킵해야 할 때 유용하다.
'JavaStudy' 카테고리의 다른 글
| [2026-03-12] 배열(Array)의 구조적 한계와 메모리 관리 (0) | 2026.04.13 |
|---|---|
| [2026-03-11] 중첩 반복문과 2차원 데이터 처리의 시각화 (0) | 2026.04.13 |
| [2026-03-09] 2026-03-09 : 종합 예제와 알고리즘의 기초 설계 (0) | 2026.04.13 |
| [2026-03-06] 제어문 - 조건문을 활용한 로직 분기 설계 (0) | 2026.04.13 |
| [2026-03-05] 연산자 체계와 우선순위의 논리적 이해 (0) | 2026.04.13 |
