最近代码中用到了这两个函数,其实自己也有点不太清楚,那就一起来看看吧。
实际工作中,我们需要对字符串进行一些校验,比如:是否为 null,是否为空,是否去掉空格、换行符、制表符等也不为空。
一、
1.两个都是判断函数。判断函数,判断的就是是否为空。
2.isBlank(String str)和isEmpty(String str)都是apache 的 commons jar 包中的StringUtils下的两个方法。
3.常说的字符串为空,其实就是一个没有字符的空数组。
4.比如:String a = “” , a 就可以称为是一个空字符串.
二、
1.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) {
// 判断字符是否为空格、制表符、tab
if (!Character.isWhitespace(str.charAt(i))) {
return false;
}
}
return true;
} else {
return true;
}
}
三、区别
1.isEmpty 没有忽略空格参数,是以是否为空和是否存在为判断依据。
2.isBlank 是在 isEmpty 的基础上进行了为空(字符串都为空格、制表符、tab 的情况)的判断。(一般更为常用)
3.如果允许包含空格,则使用isEmpty判空。
版权声明:本文为weixin_44912627原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。