Java面試題#Java中isEmpty()和isBlank()方法的區別

2024年2月6日 24点热度 0人点赞

isEmpty()isBlank()都是用於檢查字符串是否為空的兩種不同方法,它們不同之處在於,如果給定字符串中隻有空格,則 isBlank() 返回 true,而 isEmpty() 返回 false。

isEmpty() 方法:

  • 它從 Java 1.6 就存在了。
  • isEmpty()String類提供的方法。
  • 它檢查字符串是否為空,即長度為 0(不包含字符)。
  • 如果字符串長度為 0,isEmpty()則返回true;否則,它返回false
  • isEmpty() 當且僅當 length() 為 0 時,此方法返回 true。這意味著字符串中除空格外沒有任何單個字符。
public class Java11StringFeatures {
    public static void main(String[] args) {
        String str1 = "";      // Empty string
        String str2 = "Java"; // Non-empty string
        String str3 = " "; // Strign with whitespace
        System.out.println(str1.isEmpty()); // Output: true
        System.out.println(str2.isEmpty()); // Output: false
        System.out.println(str3.isEmpty()); // Output: false
    }
}

isBlank方法:

  • isBlank()是 Java 11 中作為String類的一部分引入的方法。
  • 它檢查字符串是否為空白,這意味著它的長度為 0 或者僅包含空白字符(例如空格、制表符和換行符)。
  • 如果字符串的長度為 0,或僅包含空白字符,則isBlank()返回true;否則,返回false.
public class Java11StringFeatures {
    public static void main(String[] args) {
        String str1 = "";      // Empty string
        String str2 = "Java"; // Non-empty string
        String str3 = " "; // Strign with whitespace
        System.out.println(str1.isBlank()); // Output: true
        System.out.println(str2.isBlank()); // Output: false
        System.out.println(str3.isBlank()); // Output: true
    }
}