В следующем методе компилятор жалуется на отсутствующий оператор return, хотя существует только один путь через метод и содержит оператор return
. Для подавления ошибки требуется другой оператор return
.
public int foo() {
if (true) {
return 5;
}
}
Учитывая, что компилятор Java может распознавать бесконечные циклы, почему он не справляется с этой ситуацией? Связанный вопрос подсказывает, но не содержит подробностей для этого конкретного случая.