So Sánh String isEmpty() và isBlank() trong Java

So Sánh String isEmpty() và isBlank() trong Java

Trong Java, việc kiểm tra xem một chuỗi (string) có rỗng hay không là một tác vụ phổ biến. Java cung cấp hai phương thức isEmpty()isBlank() để thực hiện các kiểm tra này. Dù cả hai đều liên quan đến việc kiểm tra tính “trống không” của chuỗi, chúng có các hành vi khác nhau.

II. Phương Thức isEmpty()

2.1. Mô tả

Phương thức isEmpty() được sử dụng để kiểm tra xem chuỗi có độ dài bằng 0 hay không. Nó trả về true nếu chuỗi không chứa ký tự nào.

2.2. Cú pháp

				
					public boolean isEmpty()

				
			

2.3. Ví dụ

				
					public class Main {
    public static void main(String[] args) {
        String str1 = "";
        String str2 = " ";
        String str3 = "Hello";

        System.out.println(str1.isEmpty()); // true
        System.out.println(str2.isEmpty()); // false
        System.out.println(str3.isEmpty()); // false
    }
}

				
			

Trong ví dụ trên, str1 là một chuỗi rỗng nên str1.isEmpty() trả về true. Ngược lại, str2 str3 chứa các ký tự (dù là khoảng trắng) nên isEmpty() trả về false.

III. Phương Thức isBlank()

3.1. Mô tả

Phương thức isBlank() được giới thiệu từ Java 11 và kiểm tra xem chuỗi chỉ chứa các ký tự trắng (whitespace) hay không. Nó trả về true nếu chuỗi rỗng hoặc chỉ chứa các ký tự trắng.

3.2. Cú pháp

				
					public boolean isBlank()

				
			

3.3. Ví dụ

				
					public class Main {
    public static void main(String[] args) {
        String str1 = "";
        String str2 = " ";
        String str3 = "Hello";

        System.out.println(str1.isBlank()); // true
        System.out.println(str2.isBlank()); // true
        System.out.println(str3.isBlank()); // false
    }
}

				
			

Trong ví dụ này, str1 str2 đều trả về true khi gọi isBlank(), vì chúng hoặc rỗng hoặc chỉ chứa ký tự trắng. Trong khi đó, str3 chứa ký tự không phải khoảng trắng nên isBlank() trả về false.

IV. So Sánh isEmpty() và isBlank()

Tiêu chí isEmpty() isBlank()
Java Version Java 6 trở lên Java 11 trở lên
Kiểm tra Chuỗi có độ dài bằng 0 Chuỗi rỗng hoặc chỉ chứa ký tự trắng
Kết quả true nếu chuỗi không chứa ký tự nào true nếu chuỗi rỗng hoặc chỉ chứa ký tự trắng
Ví dụ trả về true "" (chuỗi rỗng) "" (chuỗi rỗng), " " (chuỗi trắng), "\n" (chuỗi xuống dòng)

Cả hai phương thức isEmpty()isBlank() đều hữu ích trong các tình huống khác nhau:

  • Sử dụng isEmpty() khi bạn chỉ cần kiểm tra xem chuỗi có độ dài bằng 0 hay không.
  • Sử dụng isBlank() khi bạn cần kiểm tra xem chuỗi có chứa bất kỳ ký tự nào khác ngoài các ký tự trắng hay không.