Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Câu Lệnh Switch Trong Java: Cách Sử Dụng

Câu lệnh điều kiện là tính năng phổ biến trong mọi ngôn ngữ lập trình. Chúng ta dùng câu lệnh điều kiện kiểm soát luồng chương trình. Trong Java, câu lệnh if...else dùng kiểm soát luồng chương trình dựa trên tập điều kiện nhất định.

Ngoài ra, Java cung cấp tính năng gọi là câu lệnh switch, sẽ đánh giá biểu thức đối với nhiều trường hợp (case). Nếu câu lệnh khớp trường hợp chỉ định, khối mã tương ứng trường hợp đó sẽ thực thi.

Trong hướng dẫn này, chúng ta sẽ thảo luận cách dùng câu lệnh “switch” trong Java, và cách dùng từ khóa default, case và break. Chúng ta cũng sẽ đi qua ví dụ các từ khóa này dùng trong câu lệnh switch Java.

Tóm Tắt Câu Lệnh Điều Kiện

Câu lệnh điều kiện cho phép chương trình thực thi mã khi điều kiện cụ thể đánh giá thành True. Ví dụ, câu lệnh điều kiện có thể nói chương trình chạy khối mã chỉ nếu biến name chứa chữ F.

Trong Java, có hai câu lệnh điều kiện dùng kiểm soát luồng mã: if...else và switch.

Câu lệnh if...else thực thi khối mã nếu điều kiện đánh giá thành true. Ví dụ câu lệnh if trong Java:

if (15 > 5) { System.out.println("15 is greater than 5."); }; 

Mã đánh giá biểu thức 15 > 5, là true, nên trả về:

15 is greater than 5.

Ngoài ra, có thể chỉ định khối else, chạy mã nếu tất cả điều kiện đánh giá thành false, và khối else...if chỉ định điều kiện mới kiểm tra nếu điều kiện đầu false.

Câu lệnh switch cũng có thể dùng thực hiện đánh giá điều kiện trong mã.

Câu Lệnh Switch Trong Java

Câu lệnh switch Java dùng đánh giá câu lệnh đối với một hoặc nhiều điều kiện và thực thi khối mã tương ứng điều kiện đánh giá thành True.

Câu lệnh switch chứa câu lệnh case, dùng chỉ định điều kiện biểu thức nên đánh giá. Cú pháp câu lệnh switch Java:

switch(expression) { case a: break; case b: break; case c: break; default: break; } 

Hãy phân tích cách hoạt động.

Biểu thức trong câu lệnh switch được đánh giá một lần. Sau đó giá trị biểu thức so sánh với giá trị mỗi case, bắt đầu từ đầu câu lệnh switch. Nếu biểu thức khớp case, khối mã liên kết câu lệnh case thực thi. Nếu biểu thức không khớp case, nhãn case tiếp theo đánh giá.

Nếu không điều kiện nào đánh giá thành true, nội dung câu lệnh default thực thi.

Ví Dụ Câu Lệnh Switch

Chúng ta sẽ đi qua ví dụ hoạt động của câu lệnh switch minh họa cách hoạt động. Giả sử muốn tạo chương trình cho biết tên tháng dựa trên giá trị số của tháng. Chỉ muốn chương trình hoạt động với sáu tháng đầu năm.

Để tạo chương trình, dùng phương thức time.LocalDate Java lấy giá trị số tương ứng tháng này. Số 1 đại diện tháng Giêng, 2 đại diện tháng Hai, v.v.

Trước bắt đầu, thiết lập mã lấy giá trị số tương ứng tháng này. Mã lấy dữ liệu này:

LocalDate today = LocalDate.now(); int month = today.getMonthValue(); System.out.println(month); 

Mã trả về giá trị số đại diện tháng hiện tại, trường hợp này là 2 (bài viết tháng Hai).

Dùng câu lệnh switch, gửi thông báo bảng điều khiển tên tháng dựa trên giá trị số tính toán mã trên. Chương trình chạy từ trên xuống dưới tìm sự khớp. Khi tìm thấy khớp, câu lệnh break dừng câu lệnh switch và tiếp tục thực thi chương trình.

Mã chương trình lịch:

LocalDate today = LocalDate.now(); int month = today.getMonthValue(); switch (month) { case 1: System.out.println("January"); break; case 2: System.out.println("February"); break; case 3: System.out.println("March"); break; case 4: System.out.println("April"); break; case 5: System.out.println("May"); break; case 6: System.out.println("June"); break; } 

Khi thực thi mã, phản hồi sau trả về: February.

Phân tích cách mã hoạt động. Đầu tiên, dùng phương thức LocalDate lấy giá trị số đại diện tháng này. Sau đó định nghĩa câu lệnh switch có sáu case.

Chương trình thực thi từng case theo thứ tự cho đến khi tìm case đánh giá thành true. Trong trường hợp này, câu lệnh case 2 đánh giá true, vì tháng Hai có giá trị số 2. Sau đó chương trình in tên tháng ra bảng điều khiển và thực thi câu lệnh break, dừng chương trình tiếp tục.

Nếu là tháng Năm, giá trị tháng là 5, và May in ra bảng điều khiển.

Từ Khóa Break

Trong mã trên, dùng từ khóa break. Khi Java thực thi câu lệnh break, nó dừng chạy mã trong khối switch và tiếp tục chạy chương trình.

Câu lệnh này quan trọng vì ngăn chương trình kiểm tra thêm case khi case đã đáp ứng. Điều này tiết kiệm thời gian thực thi vì chương trình không cần đánh giá thêm case sau khi tìm thấy case đúng. Nên dùng câu lệnh break cuối mỗi case.

Ví dụ câu lệnh break từ mã trên:

… case 4: System.out.println("April"); break; … 

Nếu là tháng Tư, case này thực thi, rồi chương trình thoát câu lệnh switch vì có break.

Từ Khóa Default

Từ khóa default dùng chỉ định mã nên chạy nếu không tìm thấy case. Trong ví dụ trên, định nghĩa chương trình trả về tên tháng, nhưng chỉ nếu từ tháng Giêng đến tháng Sáu.

Nhưng nếu muốn người dùng thấy thông báo mặc định It’s after June nếu không case nào đánh giá true? Đó là lúc từ khóa default xuất hiện.

Ví dụ từ khóa default dùng với ví dụ trên chỉ định thông báo xuất hiện nếu không case nào đánh giá true:

case 4: System.out.println("April"); break; case 5: System.out.println("May"); break; case 6: System.out.println("June"); break; default: System.out.println("It's after June!") break; … 

Nếu là tháng Bảy và thực thi chương trình, nội dung câu lệnh default thực thi vì không case nào đánh giá true. Sau đó thông báo It’s after June! in ra bảng điều khiển.

Kết Luận

Câu lệnh switch Java dùng đánh giá câu lệnh đối với nhiều case và thực thi mã nếu case cụ thể đáp ứng. Câu lệnh switch là dạng câu lệnh điều kiện kiểm soát luồng chương trình.

Hướng dẫn này thảo luận cách dùng câu lệnh switch trong Java, khám phá cách dùng câu lệnh case, break, và default với phương thức switch. Hơn nữa, chúng ta đi qua ví dụ câu lệnh switch trong thực tế dùng các từ khóa này.

Bây giờ bạn sẵn sàng dùng câu lệnh switch trong Java như chuyên gia!