两个方法都是判断字符是否为空的。前者是要求没有任何字符,即str==null 或 str.length()==0;后者要求是空白字符,即无意义字符。其实isBlank判断的空字符是包括了isEmpty的。换句话说,isEmpty判断的范围更小,只是在没有字符的情况下。下面他们的具体用法:

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