☕Java

Java 조건문 마스터하기 : if, else, switch 완벽 가이드

itstory(Booho) 2024. 12. 8. 13:03
728x90

조건문은 프로그램이 특정 상황에 따라 다른 행동을 취할 수 있게 해주는 강력한 도구입니다.

 

1. if 문 : 단순한 결정
  if 문은 가장 기본적인 조건문입니다. "만약 ~라면, ~하세요"라고 생각하면 됩니다.

       **라면 → 조건 " if ( 괄호안에 조건을 써야 하고 ) "
       ~ 해라 → 액션  " if(){ 중괄호 안에 액션이 들어간다"
       이런 구조를 "조건문"이라고 한다.
       컴퓨터에게 일 시킬 때 사용한다.

 

  예제 :  나이가 18세 이상이면 "성인입니다. 입장하세요!"라는 메시지를 출력합니다.

int age = 20;
if (age >= 18) {
    System.out.println("성인입니다. 입장하세요!");
}


2. if - else 문 : 두 가지 선택지
  if-else 문은 조건이 참일 때와 거짓일 때 각각 다른 행동을 취하고 싶을 때 사용합니다.


  예제 :  점수가 60점 이상이면 합격, 그렇지 않으면 불합격 메시지를 출력합니다.

int score = 85;
if (score >= 60) {
    System.out.println("합격입니다. 축하해요!");
} else {
    System.out.println("아쉽게도 불합격입니다. 다음에 다시 도전하세요!");
}


3. if-else if-else 문 : 여러 가지 선택지
  여러 조건을 순차적으로 확인하고 싶을 때 사용합니다.

 

  예제 : 점수에 따라 학점을 부여합니다.

             조건을 위에서부터 순서대로 확인하여 처음으로 참이 되는 조건의 코드를 실행합니다.

int grade = 85;
if (grade >= 90) {
    System.out.println("A 학점");
} else if (grade >= 80) {
    System.out.println("B 학점");
} else if (grade >= 70) {
    System.out.println("C 학점");
} else {
    System.out.println("D 학점");
}

else if 를 사용하는 경우 참인 경우가 생기면 CPU 는 그 뒤의 아래 명령어를 실행하지 않는다.


4. switch 문 : 다중 선택
  switch 문은 하나의 변수에 대해 여러 가지 경우를 처리할 때 유용합니다.

  예제 : 요일에 따라 다른 메시지를 출력합니다.(두 가지의 예제 비교 및 설명)

              switch 문은 여러 case를 한 번에 처리할 수도 있어 편리합니다.

 

  1번 예제 : break;  ← 사용

String day = "월요일";
switch (day) {
    case "월요일":
          // 조건식의 결과가 "월요일"과 같은 경우 수행될 문장들
        System.out.println("월요병 조심하세요!");
        break;
          // switch 문을 벗어난다 
    case "금요일":
          // 조건식의 결과가 "금요일"과 같은 경우 수행될 문장들 
        System.out.println("불금 즐기세요!");
        break;
        
    case "토요일":
    case "일요일":
        System.out.println("주말을 즐기세요!");
        break;
    default:
          // 조건식의 결과와 일치하는 case 문이 없을 때 수행될 문장들
        System.out.println("평범한 하루 되세요!");
}

 

2번 예제  : break;  ← 미사용

public class Test {
    public static void main(String[] args) {
        String day = "월요일";
        switch (day) {
            case "월요일":
                // 조건식의 결과가 "월요일"과 같은 경우 수행될 문장들
                System.out.println("월요병 조심하세요!");
            case "금요일":
                // 조건식의 결과가 "금요일"과 같은 경우 수행될 문장들            
                System.out.println("불금 즐기세요!");
            case "토요일":
            case "일요일":
                System.out.println("주말을 즐기세요!");
            default:      
                // 조건식의 결과와 일치하는 case 문이 없을 때 수행될 문장들
                System.out.println("평범한 하루 되세요!");
        }
    }
}

 

break 사용 시 :
  해당 case의 코드만 실행하고 switch문을 빠져나갑니다.
  의도한 case만 실행되어 예측 가능한 결과를 얻습니다.
break 미사용 시 :
  해당 case부터 이후의 모든 case 코드가 순차적으로 실행됩니다.
  이를 "fall through"라고 합니다.

728x90