Но зачем использовать метку на блоке кода?
Моим приложением обычно является переключение на строковую переменную (или что-либо, кроме char, byte, short, int, Enum).
«Чтобы приготовить омлет, нужно разбить несколько яиц»
Пример:
String key = "scrambled";
eggs: {
if ("do-nothing".equals(key)) break eggs;
if ("scrambled".equals(key)) {
;//scramble code here
break eggs;
}
if ("fried".equals(key)) {
;//fry code here
break eggs;
}
//default behaviour goes here
//or maybe throw an exception
}
Хорошо, хорошо, «Иногда, чтобы приготовить омлет, нужно убить несколько человек»
Альтернативы:
- Java 7 позволяет String в качестве переключателя.
- Обходной путь Enum с использованием
MyEnum.valueOf (str) можно заставить работать.
- Переключатель на строке (или
Хэш-код объекта) плюс еще
if-then-else if
возможно, но
будет иметь смысл только для многих возможностей, в этом случае
Вероятно, все дело в капитальном ремонте.