Back to questions
Junior — Middle
81
Объясните концепцию безопасной работы с null в языке Kotlin и как она реализована
Companies where asked
IBS
Answer from AI
sobes.tech AI
В Kotlin концепция безопасной работы с null реализована через систему типов с поддержкой nullable и non-nullable типов.
- По умолчанию переменные не могут содержать
null. Например,var a: String = "text"не может бытьnull. - Чтобы разрешить
null, тип объявляется с?, например,var b: String? = null.
Для работы с nullable типами Kotlin предоставляет:
- Оператор безопасного вызова
?.— позволяет вызвать метод или получить свойство, если объект неnull, иначе возвращаетnull. - Оператор Элвиса
?:— задает значение по умолчанию, если выражение слеваnull. - Оператор not-null assertion
!!— принудительно преобразует nullable тип в non-nullable, выбрасывая исключение, если значениеnull.
Пример:
val name: String? = null
println(name?.length) // Выведет null, не вызовет ошибку
println(name?.length ?: 0) // Выведет 0
println(name!!.length) // Бросит NullPointerException
Таким образом, Kotlin помогает избежать классических ошибок с null на этапе компиляции, делая код более надежным.