조건문과 반복문 한눈에 정리: 자바 흐름 제어 마스터
“조건”과 “반복” 없이는 프로그램이 돌아가지 않아요. 이건 자바만의 이야기가 아닙니다. 전 세계 공통!
안녕하세요! 오늘은 자바 프로그래밍에서 ‘흐름 제어’의 핵심인 조건문과 반복문에 대해 이야기해볼게요. 예전엔 “조건에 따라 다른 행동을 하게 만들고 싶다”거나, “무언가를 여러 번 반복하게 하고 싶다”면 어쩌지? 하고 막막했거든요. 그런데 if, for, while 이 세 친구를 알고 나서 코드 짜는 게 훨씬 유연해졌어요. 게임 만들기, 계산기 만들기, 심지어 로봇 제어까지 전부 이 흐름 제어에서 출발하니까 꼭 알아둬야 해요!
목차
if 조건문의 구조와 활용
조건문은 말 그대로 어떤 조건이 참(true)이면 특정 코드를 실행하는 구조예요. if 문은 가장 기본적인 조건문으로, 다음과 같은 형태로 사용돼요:
int score = 85;
if (score >= 90) {
System.out.println("A등급");
} else if (score >= 80) {
System.out.println("B등급");
} else {
System.out.println("C등급 이하");
}
else if와 else를 조합하면 다양한 조건 분기 처리가 가능하고, 중첩 if문도 얼마든지 작성할 수 있어요. 다만 가독성을 위해 너무 깊게 중첩하는 건 피하는 게 좋아요.
switch 문으로 조건 분기하기
사용 상황 | 장점 | 예시 |
---|---|---|
값이 고정된 경우 | 가독성 우수 | switch (day) |
case별 로직 분리 | 중첩 if보다 구조적 | case 1: ... break; |
int day = 3;
switch (day) {
case 1:
System.out.println("월요일");
break;
case 2:
System.out.println("화요일");
break;
default:
System.out.println("그 외 요일");
}
while 문으로 반복 제어
- 조건이 true인 동안 계속 반복
- 조건이 처음부터 false면 한 번도 실행 안 함
- 반복 횟수 불확정일 때 유리
int i = 0;
while (i < 5) {
System.out.println("i = " + i);
i++;
}
for 문으로 깔끔한 반복 구현
for 문은 반복 횟수가 정해져 있을 때 가장 많이 사용하는 반복문이에요. 반복 변수 초기화, 조건 검사, 증감까지 한 줄에 명확하게 표현할 수 있어 가독성이 뛰어나요.
for (int i = 0; i < 5; i++) {
System.out.println("i = " + i);
}
배열이나 리스트를 다룰 때도 자주 사용되며, 향상된 for 문(for-each
)은 특히 배열 요소를 하나씩 순회할 때 유용해요.
int[] scores = {90, 80, 70};
for (int score : scores) {
System.out.println("점수: " + score);
}
break 와 continue 의 차이
명령어 | 설명 | 용도 |
---|---|---|
break | 반복문 완전히 종료 | 특정 조건에서 반복 중단 |
continue | 이번 회차만 건너뛰고 다음 반복 | 예외 처리 시 유용 |
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) continue; // 짝수 건너뜀
if (i > 7) break; // 7보다 크면 종료
System.out.println(i);
}
조건문/반복문 작성 팁 & 예제
- 조건문은 else if보다 switch가 더 가독성 좋을 때도 있다
- 반복문에서 탈출 조건을 꼭 명확하게 지정하자
- 디버깅이 안 될 때는 i 값을 println으로 찍어보자
if는 조건식이 자유롭고 범용적이고, switch는 값이 고정된 경우에만 써요. 간결성은 switch가 더 좋아요.
while은 반복 횟수가 불확정일 때, for는 반복 횟수가 정해졌을 때 많이 사용해요.
배열이나 리스트의 전체 요소를 하나씩 순회할 때 가장 깔끔하게 사용할 수 있어요.
break는 반복문 자체를 끝내고, continue는 다음 반복으로 넘어가요.
가능해요. 하지만 너무 깊은 중첩은 피하고, 함수로 분리하는 걸 추천해요.
네, 다만 매 반복마다 새로 생성되므로 성능 이슈가 있을 수 있어요. 반복 외부에서 선언도 고려하세요.
조건문과 반복문은 단순히 코드를 반복하거나 분기하는 기능을 넘어서, 프로그램의 ‘생각’을 구현하는 도구예요. 실제로 우리가 내리는 판단과 행동의 흐름을 자바 코드로 옮긴다고 보면 되죠. 처음엔 중첩 조건이나 반복이 복잡해 보일 수 있지만, 자주 써보고 직접 실행해보면 금방 감이 잡혀요. 이번 포스팅이 if, switch, while, for를 더 쉽게 이해하고 활용하는 데 도움이 되었기를 바라요! 여러분의 코드 경험담도 댓글로 들려주세요 😊
자바 조건문, 반복문, if문, switch문, while문, for문, break continue, 흐름 제어, 자바 기초문법, Java loop control
'프로그래밍 > 자바[JAVA]' 카테고리의 다른 글
6장. 자바 메서드 완전 정복: 정의, 호출, 매개변수, 반환값까지 (0) | 2025.05.05 |
---|---|
5장. 자바의 배열과 ArrayList 기초 (2) | 2025.05.04 |
2장. 변수와 데이터 타입 완전 정복: 자바 기초 다지기 (1) | 2025.05.04 |
1장. 자바 소개와 개발 환경 구축: 처음 시작하는 Java 프로그래밍 (1) | 2025.05.04 |
3장. 연산자와 수식 한방에 끝내기: 자바 기초 연산 완전 정복 (0) | 2025.05.03 |