Hôm nay chúng ta sẽ tìm hiểu ví dụ vềcách sử dụng Java Switch Case với String. Là một lập trình viên Java, bạn hẳn đã quen với tầm quan trọng của String và tần suất nó được sử dụng trong luồng điều kiện.

Dù bạn có một phương thức đơn giản hoạt động khác nhau với từng String đầu vào, hay một lớp Servlet controller để kiểm tra hành động gửi đến và xử lý tương ứng, chúng ta đều sẽ sử dụng String và so sánh nó để quyết định luồng xử lý.
Java Switch Case
java switch case là một cách viết code gọn gàng để triển khai luồng điều kiện, tương tự như các khối if-else. Trước Java 7, cách duy nhất để xử lý luồng điều kiện dựa trên String là sử dụng if-else. Nhưng từ Java 7 trở đi, switch case đã được cải tiến để hỗ trợ String.
Ví dụ Java Switch Case với String
Dưới đây là chương trình Java minh họa cách sử dụng String trong các câu lệnh switch case. Để so sánh, bài viết cũng đưa ra thêm một phương thức khác thực hiện cùng luồng điều kiện nhưng bằng if-else. Tệp: SwitchStringExample.java
package com.journaldev.util;
public class SwitchStringExample {
public static void main(String[] args) {
printColorUsingSwitch("red");
printColorUsingIf("red");
// switch case string is case sensitive
printColorUsingSwitch("RED");
printColorUsingSwitch(null);
}
private static void printColorUsingIf(String color) {
if (color.equals("blue")) {
System.out.println("BLUE");
} else if (color.equals("red")) {
System.out.println("RED");
} else {
System.out.println("INVALID COLOR CODE");
}
}
private static void printColorUsingSwitch(String color) {
switch (color) {
case "blue":
System.out.println("BLUE");
break;
case "red":
System.out.println("RED");
break;
default:
System.out.println("INVALID COLOR CODE");
}
}
}
Đây là kết quả của chương trình trên:
RED
RED
INVALID COLOR CODE
Exception in thread "main"
java.lang.NullPointerException
at com.journaldev.util.SwitchStringExample.printColorUsingSwitch(SwitchStringExample.java:24)
at com.journaldev.util.SwitchStringExample.main(SwitchStringExample.java:10)
Những điểm cần biết về Java Switch Case với String:
Java switch case Stringgiúp mã nguồn dễ đọc hơn nhờ loại bỏ chuỗi điều kiệnif-else-iflặp lại.Java switch case Stringphân biệt chữ hoa và chữ thường, kết quả ví dụ trên đã chứng minh điều này.Java switch casesử dụng phương thứcString.equals()để so sánh giá trị được truyền vào với các giá trị trongcase, vì vậy cần thêm phần kiểm traNULLđể tránh lỗiNullPointerException.- Theo tài liệu Java 7, khi sử dụng
StringtrongSwitch, trình biên dịch Java sẽ tạo ra bytecode hiệu quả hơn so với việc dùng chuỗi điều kiệnif-else-if. - Chỉ nên sử dụng
java switch case Stringtrên Java 7 trở lên để tránh lỗi.
Qua đây, bạn đã nắm được toàn bộ ví dụ minh họa về Java switch case với String.
Mẹo: chúng ta có thể dùng toán tử ba ngôi trong Java thay cho switch để viết mã ngắn gọn hơn.