Какое значение вернет ?. если в nullable переменной значение null

«Какое значение вернет ?. если в nullable переменной значение null» — вопрос из категории Kotlin, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Оператор безопасного вызова ?. вернет null, если переменная равна null. Это позволяет избежать NullPointerException.

Пример:

val str: String? = null
val length = str?.length // вернет null

Если цепочка вызовов содержит ?., то при первом же null дальнейшие вызовы пропускаются:

user?.address?.street?.length // вернет null если любой из элементов null

Это удобная альтернатива проверкам if (x != null) или ?.let {}.