try sebagai Ekspresi
Termasuk bagian Logika & Alur dalam perjalanan Kotlin di Coddy. Pelajaran 53 dari 63.
Blok try/catch dapat menghasilkan nilai: ekspresi terakhir dari blok try atau blok catch yang selesai dan cocok menjadi hasilnya. Blok finally berjalan setelahnya untuk melakukan pembersihan, tetapi ekspresi terakhirnya tidak menggantikan nilai tersebut. Pisahkan pembersihan dari perhitungan.
Di dalam main:
val value = try { "bad".toInt() } catch (error: NumberFormatException) { -1 }
println(value)catch yang cocok memberikan minus satu sebagai hasil ekspresi.
Ekspresi try mengambil nilainya dari cabang try atau catch yang selesai dijalankan.
Tantangan
SedangLengkapi parsedDouble dengan parameter text: String. Gunakan ekspresi try untuk mengurai text sebagai Int dan menggandakannya. Tangkap NumberFormatException dan gunakan -1. Input yang berhasil diurai berada di antara -1000 dan 1000; string yang tidak valid dan di luar rentang mungkin juga muncul. Jangan hapus spasi.
Kecuali batas yang lebih ketat dinyatakan di atas, koleksi berisi paling banyak 100 elemen di setiap tingkat, dan argumen integer serta nilai integer dalam koleksi berada di antara -1000 dan 1000. Teks yang diberikan untuk penguraian dapat menyertakan representasi yang tidak valid atau di luar rentang seperti yang dijelaskan.
Kembalikan nilai bertipe Int. Pertahankan kode input/output yang diberikan. Kode tersebut membaca argumen skalar satu per baris; list diawali dengan jumlah elemennya, lalu diikuti elemen-elemennya, dan map diawali dengan jumlah entrinya, lalu diikuti setiap key dan value. Nested list mengulangi format jumlah elemen dan elemen untuk setiap baris. main yang diberikan mencetak nilai yang dikembalikan, lalu satu baris baru. List menggunakan format standar Kotlin dengan tanda kurung siku; jangan cetak label tambahan.
Coba sendiri
fun parsedDouble(text: String): Int {
// Tulis solusimu di sini.
return 0
}
fun main() {
val text = readLine().orEmpty()
println(parsedDouble(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