Написал решение через switch / case и вроде бы все правильно, но говорит, что строка 16 дублируются из за чего выбрасывает ошибку. Кто-то знает почему? Может быть нельзя в case ставить логическое вычисление? (Error:(16, 13) java: duplicate case label) P.S.: Конечно можно просто создать для каждого отдельно.. только что половину поставил case 1 / case 2 / case 3 и т.д. поштучно - все то, что шло до 6 норм обработало. А вот там где начиналось логическое вычисление выдало default, т.е. оно его просто "не видит"... есть 2 вопроса: 1. Почему в этом примере (даже если так и нельзя делать, прога не понимает) оно говорит, что строки дублируются, когда они разные? 2. Как можно поставить логические вычисления в case?
public static void main(String[] args) {
        checkSeason(12);
        checkSeason(4);
        checkSeason(7);
        checkSeason(10);
    }

public static void checkSeason(int month) {
        switch (month){
            case 12 | 1 | 2:
                System.out.println("зима");
                break;
            case 3 | 4 | 5:
                System.out.println("весна");
                break;
            case 6 | 7 | 8:
                System.out.println("лето");
                break;
            case 9 | 10 | 11:
                System.out.println("осень");
                break;
            default:
                System.out.println("Я тебе ничего не скажу, Поцелуй мой блестящий зад!");
                break;
        }
    }