Тоже ответил неверно. Java просто не позволяет изменяемые переменные захватывать и думаю что правильно делает. Хотя и не понимаю почему нельзя просто копировать значение (ссылку если объект).
Просто пресеките проблему в самом начале: не принимайте nulls
Всё зависит от контекста, вот например
job.getContact().getEmail();
Обязан каждый контакт иметь имейл? А если только телефон. Здесь null вполне правильное значение, никак не исключительное соответственно не должно никак вызывать исключений.
Поетому проверки на null нужны там где они нужны!
В Java 8 появились Optional которые позволяют делать эти проверки более красивыми и читаемыми.
Также здесь
в name вполне может оказатся null и ето для чего придуман Optional.flatMap()
Всё зависит от контекста, вот например
Обязан каждый контакт иметь имейл? А если только телефон. Здесь
null
вполне правильное значение, никак не исключительное соответственно не должно никак вызывать исключений.Поетому проверки на
null
нужны там где они нужны!В Java 8 появились Optional которые позволяют делать эти проверки более красивыми и читаемыми.
return square(x) * x
}