Menu
CoddyTech

If sebagai Ekspresi

Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 31 dari 93.

Kamu sudah melihat bagaimana if dapat digunakan secara inline untuk memilih di antara dua nilai. Namun, ketika blok if-else-mu berisi beberapa pernyataan, kamu tetap dapat menggunakan seluruh struktur sebagai ekspresi: ekspresi terakhir di setiap cabang menjadi nilai yang dikembalikan.

fun main() {
    val score = 85
    
    val message = if (score >= 60) {
        val grade = "passing"
        "You got a $grade score!"
    } else {
        val grade = "failing"
        "You got a $grade score."
    }
    
    println(message)  // Mencetak: You got a passing score!
}

Setiap cabang dapat berisi beberapa pernyataan, tetapi ekspresi terakhir dalam cabang itulah yang dikembalikan dan ditetapkan ke variabel. Dalam hal ini, string pada baris terakhir setiap blok menjadi nilai message.

Ini juga berfungsi dengan rangkaian else if:

fun main() {
    val temperature = 25
    
    val description = if (temperature > 30) {
        "Hot"
    } else if (temperature > 20) {
        "Warm"
    } else {
        "Cool"
    }
    
    println(description)  // Menampilkan: Warm
}

Saat menggunakan if sebagai ekspresi, cabang else wajib ada: Kotlin perlu memastikan sebuah nilai dikembalikan, apa pun kondisi yang benar.

challenge icon

Tantangan

Mudah

Kamu diberikan variabel berikut:

val hours = 45

Gunakan ekspresi if dengan beberapa pernyataan di setiap cabang untuk menentukan status pembayaran pekerja dan membuat pesan.

Buat variabel payStatus menggunakan ekspresi if:

  • Jika hours lebih besar dari 40:
    • Buat variabel overtime yang nilainya sama dengan hours - 40
    • Ekspresi terakhir harus berupa "Overtime: $overtime extra hours"
  • Jika tidak:
    • Buat variabel remaining yang nilainya sama dengan 40 - hours
    • Ekspresi terakhir harus berupa "Regular: $remaining hours until overtime"

Cetak nilai payStatus.

Coba sendiri

fun main() {
    val hours = 45
    
    // TODO: Tulis kodemu di bawah ini
    // Buat variabel payStatus menggunakan ekspresi if
    // Jika hours > 40: buat variabel overtime dan kembalikan "Overtime: $overtime extra hours"
    // Jika tidak: buat variabel remaining dan kembalikan "Regular: $remaining hours until overtime"
    
    
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Kotlin