java StringUtils isNotEmpty和isNotBlank的区别

java | 2019-09-13 10:02:39

用string!=null&&!string.equals("")判断字符串是否为空都是菜鸟的做法。所以我都用StringUtils。
那么StringUtils  isNotEmpty和isNotBlank的区别是什么?

1. public static boolean isEmpty(String str)   
   判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0   
   下面是 StringUtils 判断是否为空的示例:

StringUtils.isEmpty(null) = true  
StringUtils.isEmpty("") = true   
StringUtils.isEmpty(" ") = false //注意在 StringUtils 中空格作非空处理  
StringUtils.isEmpty("   ") = false  
StringUtils.isEmpty("bob") = false  
StringUtils.isEmpty(" bob ") = false

2. public static boolean isNotEmpty(String str)   
   判断某字符串是否非空,等于 !isEmpty(String str)   
   下面是示例:

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

3. public static boolean isBlank(String str)   
   判断某字符串是否为空或长度为0或由空白符(whitespace) 构成  
   下面是示例:  

StringUtils.isBlank(null) = true  
      StringUtils.isBlank("") = true  
      StringUtils.isBlank(" ") = true  
      StringUtils.isBlank("        ") = true  
      StringUtils.isBlank("\t \n \f \r") = true   //对于制表符、换行符、换页符和回车符  
  
      StringUtils.isBlank()   //均识为空白符  
      StringUtils.isBlank("\b") = false   //"\b"为单词边界符  
      StringUtils.isBlank("bob") = false  
      StringUtils.isBlank(" bob ") = false

4. public static boolean isNotBlank(String str)   
   判断某字符串是否不为空且长度不为0且不由空白符(whitespace) 构成,等于 !isBlank(String str)   
   下面是示例:

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

总结:isNotEmpty只要含有任何字符都判断不为空。isNotBlank含有回车换行换页空格制表符都是判断为空。

登录后即可回复 登录 | 注册
    
关注编程学问公众号