Ekspresi When
Daripada menulis banyak ekspresi if..else
, kamu bisa menggunakan ekspresi when
, yang lebih mudah dibaca.
Ekspresi ini biasa digunakan untuk memilih salah satu dari banyak blok kode yang akan dieksekusi:
Contoh
Gunakan nomor hari kerja untuk menghitung nama hari kerja:
fun main() { val day = 4 val result = when (day) { 1 -> "Monday" 2 -> "Tuesday" 3 -> "Wednesday" 4 -> "Thursday" 5 -> "Friday" 6 -> "Saturday" 7 -> "Sunday" else -> "Invalid day." } println(result) }
Hasil :
Thursday
Ekspresi when
mirip dengan pernyataan switch
di Java.
Begini Cara kerjanya:
- Variabel
when
(hari) dievaluasi sekali - Nilai variabel hari dibandingkan dengan nilai setiap “cabang”
- Setiap cabang dimulai dengan nilai, diikuti oleh panah (->) dan hasilnya
- Jika ada kecocokan, blok kode yang terkait akan dieksekusi
else
digunakan untuk menentukan beberapa kode yang akan dijalankan jika tidak ada kecocokan- Pada contoh di atas, nilai
days
adalah4
, artinya “Thursday” akan dicetak