본문 바로가기

Java

Java 조건문 (if, if else, switch case)

Java 조건문

조건문은 프로그램이 특정 조건에 따라 서로 다른 경로를 선택해 실행되도록 제어하는 구문이다.

대표적인 조건문으로는 if 문, if-else 문, else if 문, switch 문이 있다.

 

조건문은 논리 연산의 결과에 따라 실행 흐름을 분기하기 때문에 프로그램의 유연성을 높이고,

다양한 상황에 맞게 처리할 수 있게 한다.

 

 

if

if 문은 주어신 조건식이 true일 때 해당 블록의 코드가 실행된다.

조건이 false라면 아무것도 실행되지 않는다.

 

int number = 10;
if (number > 0) {
    System.out.println("The number is positive.");
}

 

위 코드에서는 number가 0보다 크기 때문에 "The number is positive."가 출력된다.

 

 

if - else

if문에 else 블록을 추가하면 조건이 true일 때는 if 블록이, false일 때는 else 블록이 실행된다.

 

int number = -5;
if (number > 0) {
    System.out.println("The number is positive.");
} else {
    System.out.println("The number is not positive.");
}

 

여기서 number가 0보다 크지 않기 때문에 "The number is not positive."가 출력된다.

 

 

else if

여러 조건을 검사할 때는 else if 블록을 추가할 수 있다.

각 조건이 true인지 순서대로 평가되며, 첫 번째로 true인 조건의 블록만 실행된다.

 

int number = 0;
if (number > 0) {
    System.out.println("The number is positive.");
} else if (number < 0) {
    System.out.println("The number is negative.");
} else {
    System.out.println("The number is zero.");
}

 

이 예제에서 number가 0이므로 세 번째 블록이 실행되어 "The number is zero."가 출력된다.

 

 

중첩 if

if 문 안에 다른 if 문을 중첩해서 사용할 수 있다.

이렇게 하면 여러 조건을 중첩해 확인하는 복잡한 논리 구성을 만들 수 있다.

 

int number = 20;
if (number > 0) {
    if (number % 2 == 0) {
        System.out.println("The number is positive and even.");
    } else {
        System.out.println("The number is positive but odd.");
    }
} else {
    System.out.println("The number is not positive.");
}

 

여기서는 number가 0보다 크고 짝수이므로 "The number is positive and even."이 출력된다.

 

 

switch

switch 문은 특정 변수의 값에 따라 여러 코드 블록 중 하나를 실행할 때 유용하다.

switch 문은 case를 사용해 각각의 조건을 정의하고, 조건에 맞는 case의 코드가 실행된다.

default 블록은 모든 case가 일치하지 않을 때 실행된다.

 

int day = 3;
switch (day) {
    case 1:
        System.out.println("Monday");
        break;
    case 2:
        System.out.println("Tuesday");
        break;
    case 3:
        System.out.println("Wednesday");
        break;
    case 4:
        System.out.println("Thursday");
        break;
    case 5:
        System.out.println("Friday");
        break;
    default:
        System.out.println("Weekend");
        break;
}

 

이 예제에서 day가 3이므로 "Wednesday"가 출력된다.

break 문이 없다면 다음 case로 계속 실행되기 때문에, 원하는 블록 이후에 break를 추가하는 것이 일반적이다.

 

 

switch 문과 문자열

Java 7부터는 switch 문에 문자열을 사용할 수 있게 되었다.

 

String fruit = "apple";
switch (fruit) {
    case "apple":
        System.out.println("Apple is red.");
        break;
    case "banana":
        System.out.println("Banana is yellow.");
        break;
    case "orange":
        System.out.println("Orange is orange.");
        break;
    default:
        System.out.println("Unknown fruit color.");
        break;
}

 

위 코드에서 fruit가 "apple"이므로 "Apple is red."가 출력된다.