sdevalex
@sdevalex

Java — "Отрицательный" возврат

Есть метод, который ищет объект… а как узнать, что объект не найден? Я придумал только использовать исключение, но они, по аналогии с другими языками, тормозят программу… Есть ли секретный приём?

Код примерно такой…
public SomeObject findObject()
{
     //...

     if(findResult)
          return object;

     //...???
}
  • Вопрос задан
  • 2465 просмотров
Пригласить эксперта
Ответы на вопрос 4
WNeZRoS
@WNeZRoS
return null;
не подойдёт?
Ответ написан
taviscaron
@taviscaron
«тормоза программы» при использовании исключений критичны ну разве в 0,0..001% случаев.
ну и конечно же return null; как выше подсказали вполне работает.
Ответ написан
Zorkus
@Zorkus
Поддерживаю, используйте либо return null, либо определите специальный тип NullObject, и возвращайте его в этом случае.

en.wikipedia.org/wiki/Null_Object_pattern
Ответ написан
@theme
public static final SomeObject NOT_FOUND = new SomeObject (..) ... return NOT_FOUND

внутри системы ( если метод не вызывается внешним клиентом) бывает позелен пустой объект, который делает ничего, чтобы не плодить проверки на null.
Просто возвращать null это практически обречь себя на NPE.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
ОТП Банк Москва
от 240 000 до 270 000 ₽
Sportmaster Lab Санкт-Петербург
от 150 000 ₽
Эвотор Москва
от 180 000 до 250 000 ₽