JAVA | StringUtils中 isNotEmpty 和 isNotBlank的区别

StringUtils

StringUtils 方法的操作对象是 Java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 null 则不会抛出 NullPointerException ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等,具体可以查看源代码)。

善用StringUtils工具类的中的方法,可以使我们的代码看上去更优美、简洁。

isNotEmpty

StringUtils 中提供了 isNotEmpty () 方法,查看源码

public static boolean isEmpty(CharSequence cs) {
    
    
    return cs == null || cs.length() == 0;
}

public static boolean isNotEmpty(CharSequence cs) {
    
    
    return !isEmpty(cs);
}

根据源码可知:isNotEmpty () 方法判断字符串不为null,而且长度不为0

StringUtils.isNotEmpty(null) = false
StringUtils.isNotEmpty("") = false
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty("bob") = true

isNotBlank

StringUtils 中提供了 isNotBlank() 方法,查看源码

public static boolean isBlank(CharSequence cs) {
    
    
    int strLen;
    if (cs != null && (strLen = cs.length()) != 0) {
    
    
        for(int i = 0; i < strLen; ++i) {
    
    
            if (!Character.isWhitespace(cs.charAt(i))) {
    
    
                return false;
            }
        }
        return true;
    } else {
    
    
        return true;
    }
}

public static boolean isNotBlank(CharSequence cs) {
    
    
    return !isBlank(cs);
}

根据源码可知:isNotBlank() 方法判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成

StringUtils.isNotBlank(null) = false
StringUtils.isNotBlank("") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank("\t \n \f \r") = false

区别

两者的相同点都是可以判断出不为NULL且字符串长度不为0,isNotBlank更可以判断出是否包含空格符

猜你喜欢

转载自blog.csdn.net/u012294515/article/details/100710079
今日推荐