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.
Tantangan
MudahKamu diberikan variabel berikut:
val hours = 45Gunakan ekspresi if dengan beberapa pernyataan di setiap cabang untuk menentukan status pembayaran pekerja dan membuat pesan.
Buat variabel payStatus menggunakan ekspresi if:
- Jika
hourslebih besar dari 40:- Buat variabel
overtimeyang nilainya sama denganhours - 40 - Ekspresi terakhir harus berupa
"Overtime: $overtime extra hours"
- Buat variabel
- Jika tidak:
- Buat variabel
remainingyang nilainya sama dengan40 - hours - Ekspresi terakhir harus berupa
"Regular: $remaining hours until overtime"
- Buat variabel
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"
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPenugasan GabunganOperator PerbandinganRingkasan: Matematika Sederhana7Dasar input dan output
Fungsi PrintlnTemplate stringInput ReadLineKonversi Tipe DataRingkasan: Tahun hingga PensiunRingkasan: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianArgumen BernamaNilai DefaultFungsi Ekspresi TunggalUlasan: Fungsi SigmaUlasan: Fungsi Validasi5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Operator Logika Bagian 3Ternary dengan Ekspresi ifRangkuman: Logika Sederhana8Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input11FizzBuzz dengan Sentuhan Unik
Gambaran Umum GameFungsi FizzBuzz3Kemungkinan Null
Apa Itu Keamanan NullTipe yang Dapat Bernilai NullOperator Pemanggilan AmanOperator ElvisDasar Tantangan FungsiPenegasan Bukan NullRangkuman: Akses Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseIf sebagai EkspresiEkspresi WhenWhen dengan RentangUlasan - Kalkulator Sederhana9Perulangan
For loopWhile loopDo-while loopBreakContinueRentang dalam loopLoop BersarangRingkasan: FaktorialRingkasan: Input DinamisLatihan sendiri: Playground Kotlin