Study
Kotlin

Exception Handling di Kotlin (Try/Catch)

Penjelasan

Exception handling di Kotlin memakai try/catch, sintaksnya mirip Java, TAPI (sama seperti if dan when) try di Kotlin juga bisa dipakai sebagai EXPRESSION yang menghasilkan nilai. Beda penting lain: Kotlin TIDAK punya checked exception seperti Java — kamu tidak WAJIB menangkap atau mendeklarasikan exception apa pun, meski tetap disarankan untuk menangani yang relevan.

Contoh Konsep

fun bagi(a: Int, b: Int): Int {
    if (b == 0) {
        throw IllegalArgumentException("Tidak bisa membagi dengan nol.")
    }

    return a / b
}

fun main() {
    val hasil = try {
        bagi(10, 0)
    } catch (e: IllegalArgumentException) {
        println("Error: ${e.message}")
        -1 // nilai default kalau error
    }

    println(hasil) // -1
}

Praktikum

Buat fungsi ambilElemen(data: List<Int>, index: Int): Int yang melempar IndexOutOfBoundsException kalau index di luar jangkauan data. Panggil fungsi itu di dalam try/catch dengan index yang sengaja tidak ada, lalu tampilkan pesan errornya.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Karena try adalah expression, kamu bisa langsung menampung hasilnya ke variabel (val hasil = try { ... } catch { ... }) — pastikan blok try dan SEMUA blok catch mengembalikan tipe data yang kompatibel, sama seperti aturan if/when sebagai expression.