Biểu thức switch
Thuộc phần Logic và luồng chương trình trong hành trình Java của Coddy. Bài học 36 trên 59.
Biểu thức switch (switch expression) là một tính năng cho phép bạn viết các câu lệnh switch ngắn gọn hơn và trả về giá trị trực tiếp. Cùng xem cách hoạt động nhé.
Tạo một biểu thức switch (switch expression) cơ bản trả về một giá trị:
int number = 1;
String message = switch(number) {
case 1 -> "One";
case 2 -> "Two";
default -> "Other";
};Sau khi chạy đoạn code trên, biến message chứa:
"One"
Bạn cũng có thể xử lý nhiều trường hợp cùng lúc:
int day = 2;
String type = switch(day) {
case 1, 2, 3, 4, 5 -> "Weekday";
case 6, 7 -> "Weekend";
default -> "Invalid day";
};Sau khi chạy đoạn code trên, biến type chứa:
"Weekday"
Thử thách
DễTạo một phương thức có tên getDayType nhận hai đối số:
- Một số nguyên (
day) đại diện cho một ngày trong tuần (1-7) - Một giá trị boolean (
abbreviated) quyết định định dạng giá trị trả về
Phương thức cần dùng biểu thức switch để trả về loại ngày:
- Với các ngày từ 1 đến 5 (thứ Hai đến thứ Sáu): trả về "WORKDAY" nếu không viết tắt hoặc "WKD" nếu viết tắt
- Với các ngày từ 6 đến 7 (thứ Bảy và Chủ nhật): trả về "WEEKEND" nếu không viết tắt hoặc "WKND" nếu viết tắt
- Với mọi số khác: trả về "INVALID" nếu không viết tắt hoặc "INV" nếu viết tắt
Tự làm thử
import java.util.Scanner;
public class Main {
public static String getDayType(int day, boolean abbreviated) {
// Viết code của bạn ở đây
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int day = Integer.parseInt(scanner.nextLine());
boolean abbreviated = Boolean.parseBoolean(scanner.nextLine());
System.out.println(getDayType(day, abbreviated));
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng chương trình
1Mảng đa chiều
Kiến thức cơ bản về mảng 2DTruy cập phần tử trong mảng 2DVòng lặp lồng nhau với mảng 2DÔn tập về mảng 2DPhép cộng và phép trừ ma trậnMảng không đềuMảng 3D trở lênCác mẫu thường gặp với mảng 2DÔn tập về mảng2HashMap phần 1
HashMap là gì?Khai báo HashMapTruy cập giá trịKiểm tra khóa có tồn tạiChỉnh sửa từ điểnÔn tập: HashMap3HashMap phần 2
Phương thức của HashMapDuyệt bằng keySet()Duyệt bằng entrySet()HashMap lồng nhauÔn tập: Quản lý kho hàngÔn tập: Thao tác với HashMap6Luồng điều khiển nâng cao
Câu lệnh nhãnBiểu thức switchSo khớp mẫuMệnh đề bảo vệÔn tập: luồng điều khiểnTự luyện tập: Trình biên dịch Java online