Junior — Middle
Explain the concept of safe handling of null in Kotlin and how it is implemented.
sobes.tech AI
Answer from AI
In Kotlin, the concept of safe handling of null is implemented through a type system that supports nullable and non-nullable types.
- By default, variables cannot contain
null. For example,var a: String = "text"cannot benull. - To allow
null, the type is declared with a?, for example,var b: String? = null.
To work with nullable types, Kotlin provides:
- Safe call operator
?.— allows calling a method or accessing a property if the object is notnull, otherwise returnsnull. - Elvis operator
?:— provides a default value if the expression on the left isnull. - Not-null assertion operator
!!— forcibly converts a nullable type to a non-nullable one, throwing an exception if the value isnull.
Example:
val name: String? = null
println(name?.length) // Outputs null, does not throw an error
println(name?.length ?: 0) // Outputs 0
println(name!!.length) // Throws NullPointerException
Thus, Kotlin helps avoid classic null errors at compile time, making the code more reliable.