Lesson 13 of 100
When Expression
Kotlin's powerful switch replacement
📚
Learn💻
Practice❓
Quiz🏆
Challenge⭐
Complete📚 Lý thuyết
**When** là phiên bản mạnh mẽ hơn của switch trong các ngôn ngữ khác. Nó cũng là expression! **Ưu điểm so với switch:** - Không cần break - Có thể kiểm tra nhiều giá trị - Có thể dùng với ranges, types, conditions - Là expression - trả về giá trị **Cú pháp:** ```kotlin when (value) { option1 -> result1 option2, option3 -> result2 in range -> result3 is Type -> result4 else -> defaultResult } ```
💡 Ví dụ 1/3
When cơ bản
🟣 kotlin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
fun main() { val day = 3 val dayName = when (day) { 1 -> "Thứ Hai" 2 -> "Thứ Ba" 3 -> "Thứ Tư" 4 -> "Thứ Năm" 5 -> "Thứ Sáu" 6, 7 -> "Cuối tuần" else -> "Không hợp lệ" } println("Ngày $day là $dayName")}💬 Mỗi nhánh không cần break, có thể gộp nhiều giá trị với dấu phẩy.
🎯 Fun Fact
When trong Kotlin thay thế cả switch và if-else chain, làm code sạch và dễ đọc hơn!
💡 Pro Tip
Khi when là expression và cover hết các trường hợp (ví dụ: enum), không cần else!