Come si devono verificare i valori nulli nel codice?
sobes.tech AI
Risposta dell'AI
In Kotlin, si utilizzano i seguenti approcci per lavorare con tipi nullable e verificare null:
-
Operatore di chiamata sicura (
?.): Permette di chiamare metodi o accedere alle proprietà di un oggetto solo se l'oggetto non ènull. Se l'oggetto ènull, l'intera chiamata restituiscenull. -
Operatore Elvis (
?:): Permette di fornire un valore predefinito se l'espressione a sinistra dell'operatore ènull. -
Operatore di chiamata non sicura (
!!): Converte un tipo nullable in non nullable. Se il valore ènull, verrà generata un'eccezioneNullPointerException. Il suo uso è fortemente sconsigliato, poiché può causare il crash dell'app. -
Blocco
ifcon verifica dinull: Metodo tradizionale di verifica, spesso usato in combinazione con i smart cast di Kotlin.
// Operatore di chiamata sicura ?.
val length = text?.length
// Smart cast dopo verifica di null
if (text != null) {
val length = text.length // text viene automaticamente convertito in String (non-nullable)
}
// Operatore Elvis ?:
val nonNullText = text ?: "Testo di default"
// Operatore di chiamata non sicura !! (da evitare se possibile)
val forceLength = text!!.length // Può generare NullPointerException
In Java, la verifica di null si esegue esclusivamente con operatori condizionali if:
// Java
if (text != null) {
int length = text.length();
} else {
// Gestione del caso in cui text è null
}