자바

자바 조건문

thebasics 2024. 8. 15. 17:00

목차
1. 조건문이란 무엇인가?
2. if 문
3. if-else 문
4. if-else if-else 문
5. 중첩 if 문
6. switch 문
7. 조건문 예제와 분석
8. 결론 및 추가 학습 자료


1. 조건문이란 무엇인가?

조건문은 프로그램이 특정 조건을 만족할 때만 코드 블록을 실행하도록 제어하는 데 사용됩니다. 조건문을 통해 프로그램의 흐름을 동적으로 제어할 수 있으며, 자바에서는 if, else if, else 문과 switch 문을 사용하여 조건문을 작성할 수 있습니다.


2. if 문

if 문은 가장 기본적인 조건문으로, 조건이 참(true)일 때만 코드 블록을 실행합니다. 

if 문 구문:

if (조건식) {
    // 조건식이 참일 때 실행되는 코드
}

if 문 예제:

public class IfExample {
    public static void main(String[] args) {
        int age = 18;

        if (age >= 18) {
            System.out.println("You are an adult.");
        }
    }
}

3. if-else 문

if-else 문은 조건식이 참일 때와 거짓일 때 각각 다른 코드 블록을 실행하도록 합니다.

if-else 문 구문:

if (조건식) {
    // 조건식이 참일 때 실행되는 코드
} else {
    // 조건식이 거짓일 때 실행되는 코드
}

if-else 문 예제:

public class IfElseExample {
    public static void main(String[] args) {
        int age = 16;

        if (age >= 18) {
            System.out.println("You are an adult.");
        } else {
            System.out.println("You are a minor.");
        }
    }
}

4. if-else if-else 문

if-else if-else 문은 여러 조건을 평가하여 조건식 중 하나가 참일 때 해당 코드 블록을 실행합니다.

if-else if-else 문 구문:

if (조건식1) {
    // 조건식1이 참일 때 실행되는 코드
} else if (조건식2) {
    // 조건식2가 참일 때 실행되는 코드
} else {
    // 위 조건식이 모두 거짓일 때 실행되는 코드
}

if-else if-else 문 예제:

public class IfElseIfElseExample {
    public static void main(String[] args) {
        int score = 75;

        if (score >= 90) {
            System.out.println("Grade: A");
        } else if (score >= 80) {
            System.out.println("Grade: B");
        } else if (score >= 70) {
            System.out.println("Grade: C");
        } else if (score >= 60) {
            System.out.println("Grade: D");
        } else {
            System.out.println("Grade: F");
        }
    }
}

5. 중첩 if 문

중첩 if 문은 if 문 내에 또 다른 if 문을 포함시켜 여러 단계의 조건을 평가합니다.

중첩 if 문 구문:

if (조건식1) {
    if (조건식2) {
        // 조건식1과 조건식2가 모두 참일 때 실행되는 코드
    }
}

 중첩 if 문 예제:

public class NestedIfExample {
    public static void main(String[] args) {
        int age = 20;
        boolean hasID = true;

        if (age >= 18) {
            if (hasID) {
                System.out.println("You can enter the club.");
            } else {
                System.out.println("You need an ID to enter the club.");
            }
        } else {
            System.out.println("You are not old enough to enter the club.");
        }
    }
}

6. switch 문

switch 문은 단일 변수 값을 여러 값과 비교하여 해당 값에 맞는 코드 블록을 실행합니다. switch 문은 여러 if-else 문을 간결하게 표현할 수 있는 방법입니다.

switch 문 구문:

switch (변수) {
    case 값1:
        // 변수 값이 값1일 때 실행되는 코드
        break;
    case 값2:
        // 변수 값이 값2일 때 실행되는 코드
        break;
    // 추가 case 문
    default:
        // 변수 값이 어떤 case 값과도 일치하지 않을 때 실행되는 코드
}

switch 문 예제:

public class SwitchExample {
    public static void main(String[] args) {
        int dayOfWeek = 3;

        switch (dayOfWeek) {
            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;
            case 6:
                System.out.println("Saturday");
                break;
            case 7:
                System.out.println("Sunday");
                break;
            default:
                System.out.println("Invalid day");
        }
    }
}

7. 조건문 예제와 분석

이제 다양한 조건문을 사용하는 예제를 종합하여 살펴보겠습니다.

종합 예제:

public class ConditionalStatementsExample {
    public static void main(String[] args) {
        int score = 85;

        // if-else if-else 문
        if (score >= 90) {
            System.out.println("Grade: A");
        } else if (score >= 80) {
            System.out.println("Grade: B");
        } else if (score >= 70) {
            System.out.println("Grade: C");
        } else if (score >= 60) {
            System.out.println("Grade: D");
        } else {
            System.out.println("Grade: F");
        }

        // 중첩 if 문
        int age = 22;
        boolean hasPermission = true;

        if (age >= 18) {
            if (hasPermission) {
                System.out.println("Access granted.");
            } else {
                System.out.println("Permission denied.");
            }
        } else {
            System.out.println("Access denied.");
        }

        // switch 문
        int month = 8;

        switch (month) {
            case 1:
                System.out.println("January");
                break;
            case 2:
                System.out.println("February");
                break;
            case 3:
                System.out.println("March");
                break;
            case 4:
                System.out.println("April");
                break;
            case 5:
                System.out.println("May");
                break;
            case 6:
                System.out.println("June");
                break;
            case 7:
                System.out.println("July");
                break;
            case 8:
                System.out.println("August");
                break;
            case 9:
                System.out.println("September");
                break;
            case 10:
                System.out.println("October");
                break;
            case 11:
                System.out.println("November");
                break;
            case 12:
                System.out.println("December");
                break;
            default:
                System.out.println("Invalid month");
        }
    }
}


코드 분석:

- if-else if-else 문: 점수에 따라 학점을 출력하는 코드입니다.
- 중첩 if 문: 나이와 허가 여부에 따라 접근 권한을 결정하는 코드입니다.
- switch 문: 월에 따라 월 이름을 출력하는 코드입니다.


8. 결론 및 추가 학습 자료

이번 글에서는 자바의 다양한 조건문에 대해 살펴보았습니다. 조건문을 통해 프로그램의 흐름을 제어하고, 다양한 상황에 따라 다른 동작을 수행할 수 있습니다. 조건문에 대한 이해를 바탕으로 자바 프로그래밍의 기본기를 탄탄히 다질 수 있습니다. 다음은 추가 학습 자료입니다:

추가 학습 자료:
- 자바 공식 문서: [Oracle Java Documentation](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html)
- 온라인 자바 튜토리얼: [W3Schools Java Conditions](https://www.w3schools.com/java/java_conditions.asp)
- 자바 코딩 연습 사이트: [GeeksforGeeks](https://www.geeksforgeeks.org/100-days-of-java/)

자바는 강력한 기능을 가진 프로그래밍 언어로, 꾸준히 학습하면 다양한 응용 프로그램을 개발할 수 있습니다. 이번 기회를 통해 자바의 조건문을 잘 이해하고 더 나아가 복잡한 프로그래밍을 익히길 바랍니다.


이제 자바의 조건문에 대해 자세히 이해하게 되었습니다. 다음 글에서는 자바의 반복문에 대해 다루도록 하겠습니다. 자바의 더 깊은 이해를 위해 계속해서 학습해나가세요!

반응형

'자바' 카테고리의 다른 글

자바 배열  (0) 2024.08.17
자바 반복문  (0) 2024.08.16
자바 연산자  (0) 2024.08.14
자바 변수와 자료형  (0) 2024.08.13
자바 Hello World 프로그램  (0) 2024.08.12