Java/강의

[📙 Java 문법 종합반] 1-7. 조건문 - 프로그램의 선택지

가지코딩 2025. 4. 15. 12:11

📙 목차

  1. 조건문
  2. if 문 (if, if-else, else if)
  3. switch 문
  4. 실습 과제

🧡 학습 목표

  • 조건문(if, if-else, else-if)이 무엇인지 학습한다.
  • switch 문이 무엇인지 학습한다.

1. 조건문

주어진 조건이 참인지 거짓인지에 따라 계산이나 상황을 수행하는 문장

 

 

조건문 구조

  • 조건 수식이 참(true)일 경우 명령문 실행
  • 조건 수식이 거짓(false)이면 명령문을 실행하지 않음
if (조건 수식) {
	명령문;
}
if (1 < 2) { // true
	명령문; // ✅
}

if (2 < 1) { // false
	명령문; // ❌
}

2. if 문 (if, if-else, else if)

if 문 - 조건이 참일 때만 실행

public class Main {
    public static void main(String[] args) {
        String light = "초록불";

        if (light.equals("초록불")) {
            System.out.println("건너세요!");
        }
    }
}

 

 

if-else문 - 조건이 거짓일 때도 처리

public class Main {
    public static void main(String[] args) {
        String light = "초록불";

        if (light.equals("초록불")) {
            System.out.println("건너세요!");
        } else {
            System.out.println("멈추세요!");
        }
    }
}

 

 

else-if문 - 여러개의 조건을 처리

public class Main {
    public static void main(String[] args) {
        String light = "초록불";            

        if (light.equals("초록불")) {      
            System.out.println("건너세요!");
        } else if (light.equals("노란불")) {  
            System.out.println("주의하세요!"); 
        } else {  
            System.out.println("멈추세요!");
        }
    }
}

3. switch 문

  • 값에 따라 여러 동작을 실행
  • 괄호안에 단일값만 들어갈 수 있다. 조건식은 사용할 수 없다.
switch (단일값) {
    case 값1:
        // 값1일 때 실행할 코드
        break;
    case 값2:
        // 값2일 때 실행할 코드
        break;
    default:
        // 위의 값들과 일치하지 않을 때 실행할 코드
}
public class SwitchNumber {
    public static void main(String[] args) {
        int number = 1;

        switch (number) {
            case 1:
                System.out.println("1 입니다.");
                break;
            case 2:
                System.out.println("2 입니다.");
                break;
            default:
                System.out.println("1 도 아니고 2도 아닙니다.");
        }
    }
}

 

 

* fall-through 현상 주의

break 문을 스위치에서 사용하지 않으면 다음 case 가 실행된다.


4. 실습 과제

 

신호등 색상을 입력하면 프로그램이 올바른 안내 메시지를 출력하도록 만드세요!

새로운 클래스(TrafficLight.java) 를 만들어서 진행하세요.

import java.util.Scanner;

public class TrafficLight {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        System.out.print("신호등 색상을 입력하세요 (초록불, 노란불, 빨간불): ");
        String light = in.nextLine();
        
        if (light.equals("초록불")) {
            System.out.println("건너세요!");
        } else if (light.equals("노란불")) {
            System.out.println("주의하세요!");
        } else if (light.equals("빨간불")) {
            System.out.println("멈추세요!");
        } else {
            System.out.println("잘못된 입력입니다.");
        }
    }
}