Я думаю, что Chrylis уже хорошо объяснил, как работает ваш код. Немного больше предыстории: существуют языки программирования, которые принимают диапазон значений в качестве метки регистра в выражении типа переключателя. Однако в Java и других языках с C-подобными операторами switch
необходимо указывать каждый случай индивидуально, например:
case MONDAY:
case TUESDAY:
case WEDNESDAY:
case THURSDAY:
case FRIDAY:
System.out.println("Boaring");
break;
Вы также пропустили утверждение break
, которое, как мне кажется, было предназначено после печати Boaring
(иначе дело «провалится» в следующее дело и дополнительно напечатает QuestionMark
).
Java 12 имеет некоторые улучшения синтаксиса оператора switch
. См., Например, редактирование в этого ответа YCF_L .