try ifadesi
- Kotlin kursu
- Başlangıç
- Ders 103/116
- 5 dk
Kotlin'de try'in ifade olarak kullanımını öğrenirsin.
try ifadesi: değer döndürür
Kotlin'de try bir ifadedir; bir değer üretir. catch bloğu da bir değer döndürebilir; böylece yedek değer verirsin.
val n = try {
"42".toInt()
} catch (e: NumberFormatException) {
0
}
// n = 42Başarılı olursa try bloğunun son satırı, hata olursa catch bloğunun son satırı sonuç olur. Bu sayede if/else benzeri bir akış kurarsın. Sonuç bir değişkene doğrudan atanabilir.
try ifadesinde nullable sonuç
catch bloğu null döndürürse sonuç null olabilir. Bu durumda değişken nullable olur; güvenli erişim gerekir.
val n: Int? = try {
"abc".toInt()
} catch (e: NumberFormatException) {
null
}
println(n ?: -1) // -1?: (Elvis) operatörü null değer için yedek verir. Böylece nullable sonuçları güvenle işlersin. Bu yöntem, dönüşüm başarısız olduğunda sessizce yedek değer vermeyi kolaylaştırır.
Uygulama Dizeyi sayıya çevir
Bir try ifadesi ile "42".toInt()'yi çağır; NumberFormatException yakala ve 0 döndür. Sonucu val n değişkenine ata ve println ile yazdır.
Başlangıç kodu
fun main() {
// Bir dizeyi try ifadesiyle sayıya çevir; olmazsa 0 yaz, sonucu yazdır
}Örnek çözüm
fun main() {
val n = try {
"42".toInt()
} catch (e: NumberFormatException) {
0
}
println(n)
}Beklenen çıktı
42
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 `val n = try { x.toInt() } catch (e) { 0 }` ne yapar?
- n'ye 0 yazar
- n'ye null yazar
- n'ye try değerini yazar Doğru cevap
- Derleme hatası verir
Açıklama: Hata yoksa try'nin değeri, varsa catch'in değeri n'ye gider.
2 Boşluğu doldur: try ifadesi
val n = ____ { "42".toInt() } catch (e: NumberFormatException) { 0 }
val n = try { "42".toInt() } catch (e: NumberFormatException) { 0 }
Açıklama: try ifadesi bir değer üretir.
3 Parça ve rol eşleştir
| Kavram | Anlamı |
|---|---|
try { } |
Deneme |
catch { } |
Yedek değer |
val n = |
Atama |
.toInt() |
Dönüşüm |