CodeBlanks Logo Icon CodeBlanks

Elvis operatörü

?: ile Elvis operatörünü ve null güvenliği öğrenirsin.

Elvis operatörü

Elvis operatörü ?: null olabilir bir değerin null olmadığı durumlarda kendisini, null ise varsayılan bir değeri döndürür. Adını, ?: işaretinin bir gülümsemeye (Elvis Presley'e) benzemesinden alır.

val name = input ?: "Misafir" ifadesinde input null ise name "Misafir" olur; değilse input'un kendisi olur.

val input: String? = null
val name = input ?: "Misafir"
println(name)  // Misafir

Uygulama Elvis dene

Üst düzeyde val input: String? = null tanımla. fun main() içinde val name = input ?: "Misafir" tanımla ve println(name) ile yazdır.

Örnek çözüm

Main.kt
val input: String? = null

fun main() {
    val name = input ?: "Misafir"
    println(name)
}

Beklenen çıktı

Misafir

Null güvenliği

Kotlin'de bir tür varsayılan olarak null alamaz; String null olamaz ama String? olabilir. Elvis operatörü ?:, null olabilecek değeri güvenli bir şekilde ele alır.

Alternatif olarak !! operatörü de var; ama bu, değer null ise NullPointerException fırlatır. Elvis daha güvenlidir; çünkü varsayılan bir değer vererek programın çökmesini önler.

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Elvis operatörü: eksik parçayı tamamla

Soru
val name = input ____ "Misafir"
Cevap
val name = input ?: "Misafir"

Açıklama: ?: ile null durumuna varsayılan verirsin.

2 Elvis operatörü ne zaman kullanılır?

  • Sınıf tanımında
  • Yalnızca aritmetik için
  • Döngülerde
  • Null değerlere varsayılan vermek için Doğru cevap

Açıklama: ?: null durumlarda varsayılan değer verir.

3 Elvis operatörü: kavramları eşleştir

Kavram Anlamı
?: Elvis
&& Ve
|| Veya
! Değil

Başlangıç bölümündeki tüm dersler