Sobes.tech
Junior

Koddaki null değerleri nasıl kontrol etmeliyiz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de nullable tiplerle çalışmak ve null kontrolü yapmak için aşağıdaki yaklaşımlar kullanılır:

  1. Güvenli çağrı operatörü (?.): Bir nesnenin metodlarını çağırmak veya özelliklerine erişmek, nesne null değilse mümkündür. Nesne null ise, çağrı null döner.

  2. Elvis operatörü (?:): Sol taraftaki ifade null ise, varsayılan bir değer sağlar.

  3. Güvensiz çağrı operatörü (!!): Nullable tipi non-nullable yapar. Eğer değer null ise, NullPointerException fırlatılır. Kullanımı şiddetle önerilmez, çünkü uygulamanın çökmesine neden olabilir.

  4. if bloğu ile null kontrolü: Geleneksel kontrol yöntemidir ve genellikle Kotlin'in smart cast'larıyla birlikte kullanılır.

// Güvenli çağrı operatörü ?.
val length = text?.length

// `null` kontrolünden sonra smart cast
if (text != null) {
    val length = text.length // text otomatik olarak String (non-nullable) olarak cast edilir
}

// Elvis operatörü ?:
val nonNullText = text ?: "Varsayılan Metin"

// Güvensiz çağrı operatörü !! (mümkün olduğunca kaçınılmalı)
val forceLength = text!!.length // NullPointerException atabilir

Java'da null kontrolü yalnızca if koşullarıyla yapılır:

// Java
if (text != null) {
    int length = text.length();
} else {
    // `text` null ise işlemler
}