Junior
Mis juhtub, kui pöördute objekti välja, mis võib olla null?
sobes.tech AI
Vastus AI-lt
NullPointerException (NPE). Occurs when you try to call a method or access a field of an object whose reference is null.
Example:
data class User(val name: String)
fun printUserName(user: User?) {
// If user == null, a NullPointerException will occur
println(user.name)
}
To avoid NPE, you can use:
- null checks:
fun printUserName(user: User?) { if (user != null) { println(user.name) } else { println("User is null") } } - Safe call operator (
?.):fun printUserName(user: User?) { println(user?.name) // Will print null if user == null, otherwise the name } - Elvis operator (
?:):fun printUserName(user: User?) { val userName = user?.name ?: "Default Name" // Assigns "Default Name" if user?.name is null println(userName) } - Non-null types (in Kotlin):
// This method accepts only non-null User objects fun printUserName(user: User) { println(user.name) // Guaranteed not null }