Junior — Middle
Selgitage nulliga turvalise töö kontseptsiooni Kotlinis ja kuidas see on rakendatud.
sobes.tech AI
Vastus AI-lt
Kotlinis, koncepcija turvaliseks töötamiseks null-iga on realiseeritud tüübisüsteemi kaudu, mis toetab nullable ja non-nullable tüüpe.
- Vaikimisi ei saa muutujad sisaldada
null. Näiteks,var a: String = "tekst"ei saa ollanull. null-i lubamiseks deklareeritakse tüüp?-ga, näiteks,var b: String? = null.
Nullable tüüpidega töötamiseks pakub Kotlin järgmisi tööriistu:
- Turvalise väljakutse operaator
?.— võimaldab kutsuda meetodit või pääseda omadusele, kui objekt ei olenull, vastasel juhul tagastabnull. - Elvis operaator
?:— määrab vaikimisi väärtuse, kui vasakpoolne avaldis onnull. !!-i mitte-null kinnitamise operaator — sunniviisiliselt konverteerib nullable tüübi non-nullable-ks, visates erandi, kui väärtus onnull.
Näide:
val name: String? = null
println(name?.length) // Kuvab null, ei põhjusta viga
println(name?.length ?: 0) // Kuvab 0
println(name!!.length) // Viskab NullPointerException
Sellisel viisil aitab Kotlin vältida klassikalisi vigu null-iga seoses kompileerimise ajal, muutes koodi usaldusväärsemaks.