이번 편의 목표: if와 switch로 연체 여부와 회원 등급에 따라 다른 문장을 출력합니다.

조건식은 boolean 값입니다. if는 그 값이 true일 때만 중괄호 안을 실행합니다.

연체 여부

Java
public class LateCheck {
    public static void main(String[] args) {
        int lateDays = 3;
        if (lateDays > 0) {
            int fee = lateDays * 100;
            System.out.println("연체료 " + fee + "원");
        } else {
            System.out.println("연체 없음");
        }
    }
}

lateDays가 3이면 연체료 300원이 출력됩니다. 0이면 연체 없음이 출력됩니다. else if를 이으면 여러 구간을 나눌 수 있습니다.

Java
int lateDays = 10;
if (lateDays <= 0) {
    System.out.println("연체 없음");
} else if (lateDays < 7) {
    System.out.println("단기 연체");
} else {
    System.out.println("장기 연체");
}

10일은 장기 연체입니다. 조건은 위에서부터 검사하고, 처음 참인 가지에서 멈춥니다.

switch

등급이 1, 2, 3처럼 정해진 정수라면 switch도 읽을 수 있습니다.

Java
int grade = 2;
switch (grade) {
    case 1:
        System.out.println("일반");
        break;
    case 2:
        System.out.println("우등");
        break;
    default:
        System.out.println("등급 확인");
}

break가 없으면 다음 case까지 실행됩니다. 등급 2는 우등만 출력해야 하므로 break를 둡니다.

직접 해 보기

연체 일수가 0보다 크면 일수 곱하기 100원을 출력하고, 그렇지 않으면 대출 가능을 출력하세요. 일수 0과 4를 각각 넣어 확인하세요.

해설

Java
public class Availability {
    public static void main(String[] args) {
        int lateDays = 4;
        if (lateDays > 0) {
            System.out.println(lateDays * 100);
        } else {
            System.out.println("대출 가능");
        }
    }
}

4이면 400이 출력됩니다. lateDays를 0으로 바꾸면 대출 가능이 출력됩니다.