Что такое метки и как их использовать?

Что такое метки и как их использовать?
Наверняка вам приходилось писать неуклюжий код выхода из циклов нескольких уровней вложенности:

boolean flag = false;
for (...) {
for (...) {
if (...) { x = true; break; }
}
if (flag == true) break;
}

В Java существует полезный синтаксис, который упрощает код в таких ситуациях – метки (label).

Метка используется как пункт назначения для операторов break и continue. Помечать можно любой блок – цикл for, while, даже простой блок и операторы switch и if. Метки делают возможным использование оператора break вне цикла, хотя пользы в этом обычно немного.

Обязательное условие компилятора – метка должна использоваться только внутри помеченного блока. Перейти в соседний цикл не выйдет.