原文地址:https://blog.csdn.net/a1102325298/article/details/80410740
isEmpty
public static boolean isEmpty(String str) { return str == null || str.length() == 0;}
isBlank
public static boolean isBlank(String str) {
int strLen;
if (str != null && (strLen = str.length()) != 0) {
for(int i = 0; i < strLen; ++i) {
if (!Character.isWhitespace(str.charAt(i))) { //判断字符是否为空格、制表符、tab
return false;
}
}
return true;
} else {
return true;
}
}
通过以上代码我们可以看出:
1.isEmpty没有忽略空格参数,是以是否为空和是否存在为判断依据。
2.isBlank是在isEmpty的基础上进行了为空的判断。(一般更为常用)
大家可以下面的例子取体会一下。
StringUtils.isEmpty("yyy") = false
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isBlank("yyy") = false
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true