본문 바로가기
프로그래밍/JAVA

초보 자바 프로그래밍(4) - 조건문 else / else if

by 머니테크리더 2023. 5. 1.
반응형

조건문 else / else if 대표 이미지
조건문 else / else if 대표 이미지

🔖 INDEX

     

     

    else / else if 문의 문법

    else 문은 if 문에서 조건식이 거짓(false)인 경우 실행됩니다. 즉, if 문에서 조건식이 참(true)인 경우에는 if 문 블록 내부의 코드가 실행되고, 조건식이 거짓(false)인 경우에는 else 문 블록 내부의 코드가 실행됩니다.

     

    else 문의 구조는 다음과 같습니다.

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

    else 문은 if 문과 마찬가지로 중첩하여 사용할 수 있습니다. 이 경우, else 문은 바로 위의 if 문과 짝을 이룹니다. 예를 들어, 아래와 같은 코드가 있습니다.

    if (조건식1) {
        // 조건식1이 참일 경우 실행되는 코드
    } else if (조건식2) {
        // 조건식1이 거짓이고, 조건식2가 참일 경우 실행되는 코드
    } else if (조건식3) {
        // 조건식1과 조건식2가 모두 거짓이고, 조건식3이 참일 경우 실행되는 코드
    } else {
        // 모든 조건식이 거짓일 경우 실행되는 코드
    }

    위의 코드에서 볼 수 있듯이, if-else if 문은 다중 분기(multi-branch) 구조를 갖고 있습니다. 조건식 1부터 순서대로 검사하면서, 참인 조건식이 발견되면 해당 코드 블록이 실행됩니다. 만약 모든 조건식이 거짓이라면, 마지막으로 else 블록이 실행됩니다.

     

    if-else if 문은 if-else 문과 마찬가지로 중첩하여 사용할 수 있습니다. 이 경우에는 조건이 더욱 복잡해지기 때문에 코드가 더 복잡해질 수 있습니다. 따라서, 가능한 경우 단순한 if-else if 구문을 사용하는 것이 좋습니다.

     

    if-else if 문은 다양한 상황에서 활용될 수 있습니다. 예를 들어, 점수를 입력받아 학점을 계산하는 프로그램을 만들 때, if-else if 문을 사용하여 각 학점에 해당하는 조건식을 작성할 수 있습니다. 또한, 여러 조건을 검사해야 하는 계좌이체나 예약 시스템 등에서도 if-else if 문이 유용하게 사용됩니다.

     

     

    예를 들어, 학생의 성적에 따라서 학점을 부여하는 프로그램을 작성한다고 가정해보겠습니다. 이때, 학생의 점수에 따라서 학점을 부여하는데, A, B, C, D, F 학점이 있습니다.

     

    다음은 이 프로그램을 if문과 else if문을 사용하여 작성한 예시입니다.

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

    위 코드에서 if문과 else if문을 사용하여 학생의 점수에 따라서 학점을 부여하고 있습니다. 먼저, 학생의 점수가 90점 이상인 경우에는 A학점을 부여합니다. 그다음으로, 학생의 점수가 80점 이상인 경우에는 B학점을 부여합니다. 이런 식으로 학생의 점수에 따라서 학점을 부여하고 있습니다.

     

    else if문을 사용하면 여러 개의 조건을 순서대로 검사할 수 있으므로, 위 예시에서는 학생의 점수에 따라서 순서대로 검사하고 있습니다. 따라서, 점수가 90점 이상인 경우에는 if문에서 A학점을 부여하고 바로 종료됩니다. 만약, 점수가 90점 미만이면, else if문에서 다시 점수를 검사하게 됩니다. 이런 식으로 여러 개의 조건을 순서대로 검사할 수 있으므로, 프로그램을 간결하게 작성할 수 있습니다. ​

     

    else 문은 if 문과 함께 사용하여 프로그램의 실행 흐름을 제어하는 데 매우 유용합니다. 조건에 따라 실행할 코드를 다르게 처리해야 하는 경우에 else 문을 사용하면 됩니다.

     

     

    사용 시 주의 사항

    자바 프로그래밍에서 if 조건문을 사용할 때 주의해야 할 몇 가지 점이 있습니다.

    1. 조건식의 결과가 항상 참 또는 거짓이 되어야 합니다.
      • if문에서는 조건식이 참 또는 거짓으로 판단되어야 합니다. 만약 조건식이 항상 참 또는 항상 거짓으로 판단된다면, 프로그램이 의도치 않게 작동할 수 있습니다.
    2. 중첩된 if문은 가급적 사용하지 않는 것이 좋습니다.
      • if문 안에 if문을 중첩해서 사용할 경우, 코드의 가독성이 떨어지고 디버깅이 어려워집니다. 가능한 경우, else if문을 사용하거나 switch문으로 대체하는 것이 좋습니다.
    3. 코드의 가독성을 높이기 위해 중복된 코드를 피해야 합니다.
      • if문을 사용할 때 같은 조건식이 반복해서 나타나거나 같은 동작을 하는 코드가 반복되는 경우, 이를 함수로 만들어서 중복을 제거하는 것이 좋습니다. 이렇게 함으로써 코드의 가독성이 높아지고 유지보수가 용이해집니다. ​
    4. else문의 생략에 대한 주의가 필요합니다.
      • if문이 참인 경우에만 실행되는 코드가 있는 경우, else문을 생략할 수 있습니다. 그러나 이 경우에는 코드의 가독성이 떨어지므로 주의가 필요합니다. 가독성을 고려하여 else문을 생략할 수 있는 경우에만 생략하는 것이 좋습니다.
    5. 복수의 조건문이 있는 경우, 조건의 우선순위를 고려해야 합니다.
      • 복수의 조건문이 있는 경우, 조건의 우선순위를 고려해야 합니다. 논리 연산자를 사용할 때는 우선순위를 꼭 확인하고 괄호를 사용하여 우선순위를 명확하게 표시하는 것이 좋습니다.

    이러한 사항들을 고려하면서 제어문을 사용하면, 보다 안정적이고 가독성 좋은 코드를 작성할 수 있습니다.

     

     

    댓글