Не неси ерунды. Поддержка String в операторе switch появилась как раз в JDK6. А enum с оператором switch поддерживался вообще еще с JDK5. Потому что компилятор при работе с enum неявно к меткам добавляет вызов метода ordinal(), приводя их к int.
Я и сам уже не помню что там было, в каком-то задании Раша не смог использовать enum, когда это было максимально уместно по моему мнению. Сейчас сам написал с нуля и всё заработало как надо, со старым свитчем. Так что уже не знаю какая была ситуация. Сорян, и спасибо за ответ.)
Не знаю, может у тебя другой какой-то код, у меня такой вывод, если не ставить break после default
it's E1.C
undefined
it's E2.D
Как говорилось в лекции
Фактически, case – это метки в коде, и в switch
мы прыгаем на очередную метку и…
начинаем исполнять весь код до конца switch’а, или пока не встретим break.
а... прошу прощения, я как-то просмотрел, что имелся в виду break после default. Да, там в нем нет необходимости. и у меня валидатор принял такой вариант.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ