StringUtils.isEmpty和StringUtils.isBlank用法和區別

StringUtils.isEmpty和StringUtils.isBlank用法和區別

    兩個方法都是判斷字符是否爲空的。前者是要求沒有任何字符,即str==null 或 str.length()==0;後者要求是空白字符,即無心義字符。其實isBlank判斷的空字符是包括了isEmpty的。換句話說,isEmpty判斷的範圍更小,只是在沒有字符的狀況下。下面他們的具體用法:html

    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 ") = truepost