Ответ
Null-safety в Kotlin — это механизм, предотвращающий NullPointerException (NPE) на этапе компиляции. В Kotlin типы по умолчанию не могут содержать null, если явно не объявлены как nullable с помощью ?.
Пример:
var nonNullable: String = "Hello" // Не может быть null
nonNullable = null // Ошибка компиляции
var nullable: String? = "World" // Может быть null
nullable = null // OK
Обработка nullable:
- Безопасный вызов:
nullable?.length(вернетnullеслиnullable—null) - Элвис-оператор:
nullable?.length ?: 0(значение по умолчанию) - Принудительный вызов:
nullable!!.length(выбросит NPE еслиnullable—null)
Это делает код более предсказуемым и уменьшает количество runtime-ошибок.