Switch statement

Switch w/ primitive type

@Test
public void switch_statement_primitive_type () {

    int day = 5;

    String expression = null;

    switch (day) {

        case Calendar.SUNDAY:
        case Calendar.SATURDAY:
            expression = "This is a weekend day";
            break;

        case Calendar.MONDAY:
        case Calendar.TUESDAY:
        case Calendar.WEDNESDAY:
        case Calendar.THURSDAY:
        case Calendar.FRIDAY:
            expression = "This is a weekday";
            break;
    }

    assertEquals("This is a weekday", expression);
}

Switch w/ enumerated type

public enum Day {
    SUNDAY, MONDAY, TUESDAY, WEDNESDAY,
    THURSDAY, FRIDAY, SATURDAY
}

@Test
public void switch_statement_enumerated_type () {

    Day day = Day.MONDAY;

    String expression = null;

    switch (day) {

        case SUNDAY:
        case SATURDAY:
            expression = "This is a weekend day";
            break;

        case MONDAY:
        case TUESDAY:
        case WEDNESDAY:
        case THURSDAY:
        case FRIDAY:
            expression = "This is a weekday";
            break;
    }

    assertEquals("This is a weekday", expression);
}

Switch w/ string

@Test
public void switch_statement_string () {

    String day = "MONDAY";

    String expression = null;

    switch (day) {

        case "SUNDAY":
        case "SATURDAY":
            expression = "This is a weekend day";
            break;

        case "MONDAY":
        case "TUESDAY":
        case "WEDNESDAY":
        case "THURSDAY":
        case "FRIDAY":
            expression = "This is a weekday";
            break;
    }

    assertEquals("This is a weekday", expression);
}