isEmpty 和 isBlank
isEmpty(str) 等价于 str == null || str.length == 0
isBlank(str) 等价于 str == null || str.length == 0 || str.trim().length == 0
//同理
isNotEmpty(str)等价于 str != null && str.length > 0
isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length > 0
str.length > 0 && str.trim().length > 0 ---> str.length > 0
首先来看org.apache.commons.lang包,这个包提供了一些有用的包含static方法的Util类。除了6个Exception类和2个已经deprecated的数字类之外,commons.lang包共包含了17个实用的类:接下来主要看看StringUtils工具类的方法
1. public static boolean isEmpty(String str)
StringUtils.isEmpty(null) // ----> true
StringUtils.isEmpty("") // ------> true
StringUtils.isEmpty(" ") // -----> false
StringUtils.isEmpty("ABC") // ---> false
StringUtils.isEmpty(" ABC ") //--> false
小结:判断某字符串是否为空,为空的标准是str==null或str.length()==0
2. public static boolean isBlank(String str)
StringUtils.isBlank(null) // ------------------> true
StringUtils.isBlank("") // --------------------> true
StringUtils.isBlank(" ") // -------------------> true
StringUtils.isBlank("ABC") //------------------> false
StringUtils.isBlank(" ABC ") //----------------> false
StringUtils.isBlank("\b") //-------------------> false "\b"为单词边界符
StringUtils.isBlank("\t \n \f \r") // ---------> true
//对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符
3. public static boolean isNotEmpty(String str)
判断某字符串是否非空,等于!isEmpty(String str)
StringUtils.isNotEmpty(null) // false
StringUtils.isNotEmpty("") // false
StringUtils.isNotEmpty(" ") // true
StringUtils.isNotEmpty("ABC") // true
StringUtils.isNotEmpty(" ABC ") // true
4. public static boolean isNotBlank(String str)
判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)
StringUtils.isNotBlank(null) // false
StringUtils.isNotBlank("") // false
StringUtils.isNotBlank(" ") // false
StringUtils.isNotBlank("\t \n \f \r") // false
StringUtils.isNotBlank("\b") // true
StringUtils.isNotBlank("ABC") // true
StringUtils.isNotBlank(" ABC ") // true
其他方法介绍:
5. public static String trim(String str)
去掉字符串两端的控制符(control characters, char <= 32),如果输入为null则返回null
StringUtils.trim(null) = null
StringUtils.trim("") = ""
StringUtils.trim(" ") = ""
StringUtils.trim(" \b \t \n \f \r ") = ""
StringUtils.trim(" \n\tss \b") = "ss"
StringUtils.trim(" d d dd ") = "d d dd"
StringUtils.trim("dd ") = "dd"
StringUtils.trim(" dd ") = "dd"
6. public static String trimToNull(String str)
去掉字符串两端的控制符(control characters, char <= 32),如果变为null或"",则返回null
StringUtils.trimToNull(null) = null
StringUtils.trimToNull("") = null
StringUtils.trimToNull(" ") = null
StringUtils.trimToNull(" \b \t \n \f \r ") = null
StringUtils.trimToNull(" \n\tss \b") = "ss"
StringUtils.trimToNull(" d d dd ") = "d d dd"
StringUtils.trimToNull("dd ") = "dd"
StringUtils.trimToNull(" dd ") = "dd"
7. public static String trimToEmpty(String str)
去掉字符串两端的控制符(control characters, char <= 32),如果变为null或"",则返回""
StringUtils.trimToEmpty(null) = ""
StringUtils.trimToEmpty("") = ""
StringUtils.trimToEmpty(" ") = ""
StringUtils.trimToEmpty(" \b \t \n \f \r ") = ""
StringUtils.trimToEmpty(" \n\tss \b") = "ss"
StringUtils.trimToEmpty(" d d dd ") = "d d dd"
StringUtils.trimToEmpty("dd ") = "dd"
StringUtils.trimToEmpty(" dd ") = "dd"
8. public static String strip(String str)
去掉字符串两端的空白符(whitespace),如果输入为null则返回null
下面是示例(注意和trim()的区别):
StringUtils.strip(null) = null
StringUtils.strip("") = ""
StringUtils.strip(" ") = ""
StringUtils.strip(" \b \t \n \f \r ") = "\b"
StringUtils.strip(" \n\tss \b") = "ss \b"
StringUtils.strip(" d d dd ") = "d d dd"
StringUtils.strip("dd ") = "dd"
StringUtils.strip(" dd ") = "dd"
9. public static String stripToNull(String str)
去掉字符串两端的空白符(whitespace),如果变为null或"",则返回null
下面是示例(注意和trimToNull()的区别):
StringUtils.stripToNull(null) = null
StringUtils.stripToNull("") = null
StringUtils.stripToNull(" ") = null
StringUtils.stripToNull(" \b \t \n \f \r ") = "\b"
StringUtils.stripToNull(" \n\tss \b") = "ss \b"
StringUtils.stripToNull(" d d dd ") = "d d dd"
StringUtils.stripToNull("dd ") = "dd"
StringUtils.stripToNull(" dd ") = "dd"
10. public static String stripToEmpty(String str)
去掉字符串两端的空白符(whitespace),如果变为null或"",则返回""
下面是示例(注意和trimToEmpty()的区别):
StringUtils.stripToNull(null) = ""
StringUtils.stripToNull("") = ""
StringUtils.stripToNull(" ") = ""
StringUtils.stripToNull(" \b \t \n \f \r ") = "\b"
StringUtils.stripToNull(" \n\tss \b") = "ss \b"
StringUtils.stripToNull(" d d dd ") = "d d dd"
StringUtils.stripToNull("dd ") = "dd"
StringUtils.stripToNull(" dd ") = "dd"
转自博客:http://www.cnblogs.com/dixinyunpan/p/6088612.html
我们使用的是Apache Commons类库中的org.apache.commons.lang包,关于这个类库可以看看这篇博客:
关于Apache Commons类库:http://blog.csdn.net/wiker_yong/article/details/23551209?utm_source=tuicool&utm_medium=referral