Belirli Hataları Yakalama
Coddy'nin Kotlin Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 52 / 63.
Bir try bloğu hata fırlatabilecek kodu çalıştırır. Bir catch, eşleşen bir istisnayı ele alır ve yürütmenin try/catch sonrasında devam etmesini sağlar. İlgisiz programlama hatalarının sessizce gizlenmemesi için toInt tarafından oluşturulan NumberFormatException gibi beklenen belirli bir istisnayı yakalayın.
main içinde:
try {
println("oops".toInt())
} catch (error: NumberFormatException) {
println("invalid")
}Ayrıştırma, println bir sayı almadan önce hata fırlatır; bu nedenle eşleşen catch, yedek mesajı yazdırır.
İşleminizin oluşturması beklenen belirli istisnayı yakalayın.
Görev
OrtaparseMessage işlevini text: String parametresiyle tamamlayın. text üzerinde, kırpma işlemi yapmadan toInt() çevresinde try/catch kullanın. Başarılı olduğunda, n yerine ayrıştırılan tam sayıyı koyarak value=n döndürün; NumberFormatException fırlatıldığında ise invalid döndürün.
Yukarıda daha sıkı sınırlar belirtilmediği sürece koleksiyonlar her düzeyde en fazla 100 öğe içerir ve tam sayı bağımsız değişkenleri ile tam sayı koleksiyon değerleri -1000 ile 1000 arasındadır. Ayrıştırma için sağlanan metin, açıklandığı gibi geçersiz veya aralık dışı gösterimler içerebilir.
String türünde bir değer döndürün. Sağlanan girdi/çıktı kodunu koruyun. Kod, skaler bağımsız değişkenleri satır başına bir tane okur; bir liste, ardından öğeleri gelen sayısıyla başlar ve bir eşlem, ardından her anahtar ve değer gelen kayıt sayısıyla başlar. İç içe listeler her satır için sayı ve öğeler biçimini tekrarlar. Sağlanan main, döndürülen değeri ve ardından bir yeni satır yazdırır. Listeler Kotlin'in standart köşeli parantezli biçimini kullanır; ek etiket yazdırmayın.
Kendin dene
fun parseMessage(text: String): String {
// Çözümünüzü buraya yazın.
return ""
}
fun main() {
val text = readLine().orEmpty()
println(parseMessage(text))
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Map'ler Bölüm 1
Map'ler OluşturmaGüvenli Map AramalarıMap'leri GüncellemeAnahtarları Kontrol EtmeTekrar - Stok Masası4İç İçe Koleksiyonlar
Liste ListeleriSatırlarda GezinmeSatır Özetleriİç İçe Listeleri DüzleştirmeTekrar - Oturma Sıraları7Koleksiyon İşlem Hatları
Map ile DönüştürmeDeğerleri FiltrelemeKoleksiyon Kurallarını Test EtmeFold ile BiriktirmeTekrar - Onaylanan Toplamlar2Map'ler Bölüm 2
Map Girdileri Üzerinde YinelemeAnahtarlar ve DeğerlerFrekans Map'leriİç İçe Map'lerTekrar - Frekans Raporu5Proje - Kişi Defteri
Kişileri KaydetmeKişileri Bulma8Sıralama ve Gruplama
Bir Anahtara Göre SıralamaKarşılaştırmaları BirleştirmeDeğerleri GruplamaAnahtara Göre İlişkilendirmeÖzet - Uzunluk Sıralaması11Hata Yönetimi
İstisnalar Olmadan AyrıştırmaBelirli Hataları Yakalamaİfade Olarak TryRequire ile DoğrulamaTekrar - Doğrulanmış Miktarlar3Kümeler ve Üyelik
Kümeler OluşturmaKümeleri GüncellemeKüme İşlemleriAlt Küme KontrolleriÖzet - Etkinlik Konukları6Fonksiyon Değerleri
Lambda YazmaFonksiyon TürleriFonksiyonları GeçirmeYakalanan DeğişkenlerÖzet - Yapılandırılabilir PuanKendi başına pratik yap: Kotlin playground