java 11 中 isEmpty() 和 isBlank() 方法之间的区别

2022-09-01 10:41:37

Java 11 向类中添加了一个新的实例方法。isBlank()java.lang.String

现有方法和新添加的方法之间的基本区别是什么?isEmptyisBlank()


答案 1

isEmpty()

java 字符串方法检查此字符串是否为空。如果字符串的长度为0,则返回true,否则为假,例如isEmpty()

System.out.println("".isEmpty()); // Prints - True
System.out.println(" ".isEmpty()); //Prints - False 

Java 11 - isBlank()

如果字符串为空或仅包含空格,则 new 实例方法返回 true,其中空格定义为在传递给 Character#isWhitespace(int) 时返回 true 的任何代码点。java.lang.String.isBlank()

boolean blank = string.isBlank();

在 Java 11 之前

boolean blank = string.trim().isEmpty();

在 Java 11 之后

boolean blank = string.isBlank();

答案 2

区别如下:-

isBlank() 对于只有空格字符的字符串返回 true,而 isEmpty() 将对此类字符串返回 false。

("\n\r  ").isBlank();  //returns true
("\n\r  ").isEmpty();  //returns false

有关代码示例的详细说明,请访问: isBlank() vs isEmpty() in String class Java