본문 바로가기
[Java] 자바 기초

[Java] 자바 기초 4 - 조건문

by codeomni 2023. 12. 1.
반응형

 

이번 포스트는 자바의 조건문입니다.

자바에서 조건문은 조건을 검사하고 조건에 따라 코드 블록을 실행하는 제어 구조입니다.

특정 조건에서 따라 다른 작업이 수행됩니다.

 

1. if 문

주어진 조건이 참( true )일 경우 코드 블록을 실행합니다.

거짓인 경우에는 해당 코드 블록을 실행하지 않습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Example {
    public static void main(String[] args) {
        int num = 17;
        
        // 조건이 참인 경우
        if (num > 16) {
            System.out.println("num은 16보다 큽니다.");
        }
        // 조건이 거짓인 경우
        if (num > 20) {
            System.out.println("num은 20보다 큽니다.");
        }
    }
}

조건이 거짓인 경우는 출력하지 않기 때문에 16보다 큰 경우만 출력됩니다.

 

2. if - else 문

if문은 조건이 거짓인 경우에는 출력하지 않습니다.

else문을 붙인다면 조건이 거짓일 때의 대안적인 코드를 실행합니다.

1
2
3
4
5
6
7
8
9
10
11
12
public class Example {
    public static void main(String[] args) {
        int num = 17;
        
        // 조건이 거짓인 경우
        if (num > 20) {
            System.out.println("num은 20보다 큽니다.");
        } else {
            System.out.println("num은 20보다 작습니다.");
        }
    }
}

변수 num은 20보다 작기 때문에 if 문의 블록을 실행하지 않고, else 문의 블록만 실행합니다.

 

3. else if 문

여러 조건을 순차적으로 검사하고 참인 경우에 해당 블록을 실행합니다.

조건인 거짓인 경우의 블록은 실행하지 않습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Example {
    public static void main(String[] args) {
        int num = 7;
        
        if (num > 7) {
            System.out.println("num은 7보다 큽니다.");
        } else if (num == 7) {
            System.out.println("num은 7입니다.");
        } else {
            System.out.println("num은 7보다 작습니다.");
        }
    }
}

if문의 조건과 else문은 거짓이기 때문에 실행하지 않고 else if 문의 블록만 실행합니다.

 

4. 중첩 의문문

하나의 조건문 안에 다른 조건문을 포함한 구조입니다.

if문안에 if문을 사용해서 복잡한 조건을 검사하고 프로그램의 흐름을 제어합니다.

1
2
3
4
5
6
7
8
9
10
11
12
public class Example {
    public static void main(String[] args) {
        int num1 = 7;
        int num2 = 3;
        
        if (num1 > 5) {
            if (num2 > 2) {
                System.out.println("num1은 5보다 크고 num2는 2보다틉니다.");
            }
        }
    }
}

 

5. switch문

어러가지의 선택 사항을 실행하는 조건문입니다. 

하나의 변수나 표현식의 값을 여러 경우와 비교하고 일치하는 경우 해당 블록을 실행합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class Example {
    public static void main(String[] args) {
        int day = 6;
        String dayString;
        
        switch(day) {
            case 1:
                dayString = "월요일";
                break;
            case 2:
                dayString = "화요일";
                break;
            case 3:
                dayString = "수요일";
                break;
            case 4:
                dayString = "목요일";
                break;
            case 5:
                dayString = "금요일";
                break;
            default:
                dayString = "휴일";
                break;
        }
        
        System.out.println(dayString);
    }
}

주어진 값과 일치하는 경우에 해당 case문을 실행하고, 일치하는 경우가 없으면 default문을 실행합니다.

break문은 실행 흐름을 중단시키고 switch문을 탈출하기 때문에 다음 case문이나 default 처리로 넘어가지 않습니다.

 

댓글