Menangani Error Tertentu
Termasuk bagian Logika & Alur dalam perjalanan Kotlin di Coddy. Pelajaran 52 dari 63.
Blok try menjalankan kode yang mungkin memunculkan exception. Blok catch menangani exception yang cocok dan memungkinkan eksekusi berlanjut setelah try/catch. Tangani exception spesifik yang diperkirakan, seperti NumberFormatException dari toInt, agar error pemrograman lain tidak tersembunyi tanpa diketahui.
Di dalam main:
try {
println("oops".toInt())
} catch (error: NumberFormatException) {
println("invalid")
}Proses parsing melempar exception sebelum println menerima angka, jadi catch yang cocok mencetak pesan pengganti.
Tangani exception spesifik yang diperkirakan akan dilempar oleh operasimu.
Tantangan
SedangLengkapi parseMessage dengan parameter text: String. Gunakan try/catch di sekitar text.toInt(), tanpa menghapus spasi. Kembalikan value=n jika berhasil, dengan mengganti n menggunakan bilangan bulat hasil parsing, atau invalid ketika NumberFormatException dilempar.
Kecuali batas yang lebih ketat disebutkan di atas, collections berisi paling banyak 100 elemen pada setiap tingkat, dan argumen bilangan bulat serta nilai bilangan bulat dalam collection berada di antara -1000 dan 1000. Teks yang diberikan untuk parsing dapat mencakup representasi yang tidak valid atau di luar rentang seperti yang dijelaskan.
Kembalikan nilai bertipe String. Pertahankan kode input/output yang disediakan. Kode tersebut membaca argumen skalar satu per baris; list dimulai dengan jumlah elemennya, diikuti elemen-elemennya, dan map dimulai dengan jumlah entrinya, diikuti setiap kunci dan nilai. Nested list mengulangi format jumlah elemen dan elemen untuk setiap baris. main yang disediakan mencetak nilai yang dikembalikan, diikuti satu karakter baris baru. List menggunakan format standar Kotlin dengan tanda kurung siku; jangan mencetak label tambahan.
Coba sendiri
fun parseMessage(text: String): String {
// Tulis solusimu di sini.
return ""
}
fun main() {
val text = readLine().orEmpty()
println(parseMessage(text))
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
4Koleksi Bersarang
List Berisi ListMenelusuri BarisRingkasan BarisMeratakan List BertingkatRangkuman, Baris Tempat Duduk7Alur Pemrosesan Koleksi
Transformasi dengan MapMemfilter NilaiMenguji Aturan KoleksiMengakumulasi dengan FoldRangkuman: Total yang Disetujui2Map Bagian 2
Menelusuri Entri MapKunci dan NilaiMap FrekuensiMap BersarangRingkasan: Laporan Frekuensi5Proyek: Buku Kontak
Menyimpan KontakMencari Kontak8Mengurutkan dan Mengelompokkan
Mengurutkan Berdasarkan KunciMenggabungkan PerbandinganMengelompokkan NilaiMengaitkan Berdasarkan KunciRangkuman: Papan Peringkat Berdasarkan Panjang11Penanganan Error
Parsing Tanpa PengecualianMenangani Error Tertentutry sebagai EkspresiValidasi dengan RequireRangkuman: Kuantitas yang DivalidasiLatihan sendiri: Playground Kotlin