반응형
조건문 — if와 switch로 상황에 맞게 분기하기
"점수가 90점 이상이면 A, 80점 이상이면 B…"
이런 조건에 따라 다르게 동작하는 코드를 만드는 게 조건문이에요!
자바에는 if 외에도 switch 라는 도구가 있어요. 같이 알아봐요! 🔀
📌 이 글에서 다룰 내용
- if 문 기본 구조
- else if로 여러 조건 처리하기
- switch 문
- 삼항 연산자
- 실습 — 학점 계산기 만들기
1. if 문 기본 구조
if (조건) {
// 조건이 true일 때 실행
}
int age = 20;
if (age >= 18) {
System.out.println("성인이에요!");
}
else 로 조건이 거짓일 때를 처리해요.
int age = 15;
if (age >= 18) {
System.out.println("성인이에요!");
} else {
System.out.println("미성년자예요.");
}
2. else if — 여러 조건 처리하기
int score = 85;
if (score >= 90) {
System.out.println("A 학점");
} else if (score >= 80) {
System.out.println("B 학점");
} else if (score >= 70) {
System.out.println("C 학점");
} else {
System.out.println("D 학점");
}
B 학점
💡 조건은 위에서부터 순서대로 확인해요. 처음으로 참인 조건만 실행돼요.
조건 중첩하기
if 안에 if 를 넣을 수 있어요.
int age = 25;
boolean hasTicket = true;
if (age >= 18) {
if (hasTicket) {
System.out.println("입장 가능해요!");
} else {
System.out.println("티켓이 없어요.");
}
} else {
System.out.println("나이가 부족해요.");
}
3. switch 문
특정 변수의 값에 따라 분기할 때 switch 가 더 깔끔해요.
int day = 3;
switch (day) {
case 1:
System.out.println("월요일");
break;
case 2:
System.out.println("화요일");
break;
case 3:
System.out.println("수요일");
break;
default:
System.out.println("기타");
break;
}
수요일
⚠️
break를 꼭 써야 해요!break가 없으면 아래 case 들도 계속 실행돼요. 이걸 fall-through 라고 해요.
String으로 switch 쓰기
String season = "봄";
switch (season) {
case "봄":
System.out.println("꽃이 피어요!");
break;
case "여름":
System.out.println("더워요!");
break;
case "가을":
System.out.println("단풍이 예뻐요!");
break;
case "겨울":
System.out.println("눈이 와요!");
break;
}
4. 삼항 연산자
간단한 조건은 한 줄로 표현할 수 있어요.
조건 ? 참일 때 값 : 거짓일 때 값
int age = 20;
String result = (age >= 18) ? "성인" : "미성년자";
System.out.println(result); // 성인
int a = 10, b = 20;
int max = (a > b) ? a : b;
System.out.println("큰 값: " + max); // 큰 값: 20
5. 실습 — 학점 계산기 만들기
GradeCalculator.java 파일을 만들고 아래 코드를 작성해요.
import java.util.Scanner;
public class GradeCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("점수를 입력하세요 (0~100): ");
int score = scanner.nextInt();
String grade;
if (score < 0 || score > 100) {
System.out.println("올바른 점수를 입력해주세요.");
return;
}
if (score >= 90) {
grade = "A";
} else if (score >= 80) {
grade = "B";
} else if (score >= 70) {
grade = "C";
} else if (score >= 60) {
grade = "D";
} else {
grade = "F";
}
String pass = (score >= 60) ? "합격" : "불합격";
System.out.println("점수: " + score + "점");
System.out.println("학점: " + grade);
System.out.println("결과: " + pass);
scanner.close();
}
}
오늘 배운 것 정리
- ✅
if / else if / else로 다양한 조건을 순서대로 처리해요. - ✅
switch는 특정 값에 따라 분기할 때 깔끔해요. - ✅
break를 빠뜨리면 아래 case까지 실행되니 꼭 써야 해요. - ✅ 삼항 연산자로 간단한 조건을 한 줄로 표현할 수 있어요.
🎯 다음 편 예고
6편에서는 반복문(for/while) 을 배워요.
같은 코드를 반복 실행하는 강력한 방법을 알아봐요!
이 글이 도움이 됐다면 다음 편도 같이 읽어봐요 😊 질문이 있으면 언제든지 댓글로 남겨주세요!
'프로그래밍 언어 > Java' 카테고리의 다른 글
| 자바 배열과 ArrayList — 데이터를 묶어서 관리하기(Java 기초) (1) | 2026.03.21 |
|---|---|
| 자바 반복문 for문 — for와 while로 반복 작업 처리하기(Java 기초) (0) | 2026.03.20 |
| 자바 연산자와 문자열 — 계산하고 텍스트 다루기(Java 기초) (1) | 2026.03.19 |
| 자바 변수와 자료형 — 자바는 왜 이렇게 꼼꼼한 거야?(Java 기초) (0) | 2026.03.19 |
| 자바 설치하고 첫 코드 실행해보기(Java 기초) (0) | 2026.03.18 |