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

 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

 

收藏 打印