Метод 1
Попробуйте что-то вроде этого:
try {
do {
...
if (condition)
break;
...
} while(false);
} catch () {
...
}
Таким образом, блок try - это просто do-while l oop, состоящий из всего кода , Если условие истинно, оно выходит из l oop, и, следовательно, из блока try.
В противном случае оно продолжается до конца и, поскольку условие do-while ложно, выходит блока try.
Примечание: Если оператор if находится внутри другого l oop (кроме этого do-while l oop), пометьте этот do-while l oop, а затем прервать эту метку, если условие истинно.
Метод 2
Создать пользовательский класс Exception и выдать его only когда условие выполнено. Позже сделайте первый оператор catch, чтобы перехватить это пользовательское исключение. Как это:
try {
...
if (condition)
throw new CustomException();
...
} catch (CustomException e) {
// Condition was true
} catch () {
...
}