Güvenli Çağrılar ve Elvis
?. ve ?: işleçleri
Güvenli Çağrılar ve Elvis, CoddyKit'te ücretsiz bir Kotlin Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Kotlin Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kotlin Academy kursu toplamda 4 dersten oluşur.
Null olabilen değerlerle temiz çalışma
Her yerde if (x != null) yazmak kodu gereksiz yere uzatır. Kotlin, null olabilen değerler için iki kısa operatör sunar:
- güvenli çağrı
?. - Elvis operatörü
?:
Güvenli çağrı operatörü
Güvenli çağrı ?., bir yöntemi yalnızca değer null değilse çağırır veya bir özelliği yalnızca değer null değilse okur. Aksi durumda ifadenin tamamı null olarak değerlendirilir.
Çökme yoktur, açık bir denetim gerekmez.
fun main() {
val name: String? = "Kotlin"
println(name?.length)
}Null üzerinde güvenli çağrı
Alıcı null olduğunda güvenli çağrı kısa devre yapar ve hata fırlatmak yerine null döndürür.
Bu, normal nokta çağrısından temel farkıdır.
fun main() {
val name: String? = null
println(name?.length)
}Güvenli çağrıları zincirleme
Güvenli çağrılar zincirlenebilir. Zincirdeki herhangi bir bağlantı null olursa sonucun tamamı null olur.
Bu, iç içe geçmiş null denetimlerini önler.
fun main() {
val text: String? = "hello world"
val result = text?.uppercase()?.substring(0, 5)
println(result)
}Elvis operatörü
Elvis operatörü ?:, sol taraf null olduğunda bir yedek değer sağlar.
Bunu şöyle okuyun: sol değeri kullanın, yoksa sağ değeri kullanın.
fun main() {
val name: String? = null
val display = name ?: "Guest"
println(display)
}Gerçek bir değerle Elvis
Sol taraf null değilse Elvis operatörü bu değeri döndürür ve yedek değeri yok sayar.
Yedek değer yalnızca değer eksik olduğunda kullanılır.
fun main() {
val name: String? = "Sam"
val display = name ?: "Guest"
println(display)
}Güvenli çağrı ve Elvis'i birleştirme
Bu operatörler çoğu zaman birlikte kullanılır. Güvenli çağrı null üretebilir ve Elvis bir varsayılan değer sağlar.
Bu, en yaygın Kotlin kalıplarından biridir.
fun main() {
val name: String? = null
val length = name?.length ?: 0
println(length)
}Erken dönüş için Elvis
Elvis'in sağ tarafı return veya throw olabilir. Bu, bir değer eksik olduğunda işlevden erken çıkmanın temiz bir yoludur.
id null ise işlev hemen döner.
fun process(id: String?) {
val safeId = id ?: return
println("Processing " + safeId)
}
fun main() {
process("A-100")
process(null)
println("done")
}let ile güvenli çağrı
Değer null olmadığında bir bloğu çalıştırmak için ?. ile let'i birleştirin.
Bloğun içinde it, null olmayan değeri belirtir.
fun main() {
val name: String? = "Kotlin"
name?.let {
println("Length is " + it.length)
}
}Elvis ile varsayılan sayılar
Elvis, aritmetik işlemlerden önce null olabilen sayıları güvenli varsayılan değerlere dönüştürmek için kullanışlıdır.
Burada null olan bir sayıma 0 değeri verilir; böylece matematiksel işlem her zaman çalışır.
fun main() {
val count: Int? = null
val total = (count ?: 0) + 5
println(total)
}Hepsini bir araya getirme
Bu operatörler birlikte kullanıldığında hantal null denetimlerinin yerini alır:
?.yalnızca değer null olmadığında çağrı yapar?:değer null olduğunda bir yedek değer sağlar- Zincirleme ve
let, karmaşık akışları kısa ve anlaşılır hâle getirir
fun main() {
val input: String? = null
val name = input?.trim()?.uppercase() ?: "UNKNOWN"
println(name)
}Hızlı Kontrol
Güvenli çağrılar ve Elvis işleci konusundaki anlayışınızı sınayın.
Özet
Null olabilir değerlerle kullanılan iki temel işleci öğrendiniz:
- Güvenli çağrı
?.çökmek yerine null döndürür - Elvis işleci
?:bir yedek değer sağlar - Bu işleçler
letve erken dönüşlerle sorunsuz biçimde birlikte kullanılabilir
Sırada !! işleci ve neden dikkatli kullanılması gerektiği var.
Sıkça Sorulan Sorular
“Güvenli Çağrılar ve Elvis” dersi ücretsiz mi?
Evet — “Güvenli Çağrılar ve Elvis” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Kotlin Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kotlin Academy kursu toplamda 4 dersten oluşur.
“Güvenli Çağrılar ve Elvis” dersinde ne öğreneceğim?
?. ve ?: işleçleri Kotlin Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Kotlin Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Kotlin Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Güvenli Çağrılar ve Elvis” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Kotlin Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Kotlin Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Nullable ve Non-Null Türler
- Güvenli Çağrılar ve Elvis
- !! İşleci
- Platform Türleri