Ekspresi When
Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 32 dari 93.
Jika kamu perlu memeriksa beberapa nilai tertentu, rangkaian panjang pernyataan else if bisa sulit dibaca. Kotlin menyediakan ekspresi when sebagai alternatif yang lebih rapi untuk mencocokkan suatu nilai dengan beberapa kemungkinan.
fun main() {
val day = 3
val dayName = when (day) {
1 -> "Monday"
2 -> "Tuesday"
3 -> "Wednesday"
4 -> "Thursday"
5 -> "Friday"
else -> "Weekend"
}
println(dayName) // Mencetak: Wednesday
}Ekspresi when menerima sebuah nilai dan membandingkannya dengan setiap cabang. Saat ditemukan kecocokan, hasil yang sesuai akan dikembalikan. Cabang else menangani nilai apa pun yang tidak cocok dengan kasus-kasus yang tercantum.
Kamu juga bisa mencocokkan beberapa nilai dalam satu cabang dengan memisahkannya menggunakan koma:
fun main() {
val day = 6
val type = when (day) {
1, 2, 3, 4, 5 -> "Weekday"
6, 7 -> "Weekend"
else -> "Invalid"
}
println(type) // Mencetak: Weekend
}when yang menghasilkan nilai harus mencakup semua kemungkinan: setiap input yang mungkin harus memiliki hasil. Contoh bilangan bulat ini memerlukan else, tetapi when Boolean dengan cabang true dan false tidak memerlukannya.
Tantangan
MudahKamu diberi variabel berikut:
val month = 4Gunakan ekspresi when untuk menentukan musim berdasarkan nomor bulan, lalu simpan hasilnya dalam variabel bernama season.
Kondisi:
- Bulan
12,1,2harus menghasilkan"Winter" - Bulan
3,4,5harus menghasilkan"Spring" - Bulan
6,7,8harus menghasilkan"Summer" - Bulan
9,10,11harus menghasilkan"Fall" - Nilai lainnya harus menghasilkan
"Invalid month"
Gunakan nilai yang dipisahkan koma pada cabang when untuk mengelompokkan bulan yang termasuk dalam musim yang sama.
Cetak nilai season.
Coba sendiri
fun main() {
val month = 4
// TODO: Tulis kodemu di bawah ini
// Gunakan ekspresi when untuk menentukan musim berdasarkan bulan
// Simpan hasilnya dalam variabel bernama 'season'
// Cetak hasilnya
println(season)
}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