Есть ли причина использовать оператор безопасной навигации в конструкторе?

Мой друг прислал мне следующий код:

def pass = new File("password_file.txt")?.text ?: "pass"

Есть ли причина использовать ?. оператор после конструктора? Насколько я понимаю, конструктор может либо вернуть новый объект, либо выдать исключение, поэтому никогда не может быть null,

1 ответ

Ваше понимание верно. В вашем примере нет необходимости использовать нулевой безопасный текст. Вероятно, следует использовать оператор elvis, если файл пуст.

Другие вопросы по тегам