Sobes.tech
Junior — Middle

Lehetséges-e Kotlinben, hogy a kód futtatásakor NullPointerException keletkezzen?

sobes.tech MI

Válasz az MI-től

Igen, Kotlinben előfordulhat olyan helyzet, amikor NullPointerException keletkezik, annak ellenére, hogy beépített null-biztonsági rendszerrel rendelkezik. Ez akkor fordulhat elő, ha:

  • Az !! operátort (nem-null állítás) használjuk, amely egyértelműen jelzi a fordítónak, hogy az érték nem null, de ha mégis null, kivétel keletkezik.
  • Java kóddal való interakció során, ahol a null-biztonság nem garantált, és Kotlin nem mindig tudja ellenőrizni a nullability-t.
  • Helytelen használat esetén a lateinit változókkal, ha azokhoz hozzáférünk az inicializálásuk előtt.

Példa az !! operátorral:

val s: String? = null
val length = s!!.length // Itt NullPointerException keletkezik