StringUtils中 isNotEmpty 和isNotBlank的區(qū)別【java字符串判空】

原文地址:https://www.cnblogs.com/dixinyunpan/p/6088612.html

isNotEmpty(str)等價(jià)于 str != null && str.length > 0
isNotBlank(str) 等價(jià)于 str != null && str.length > 0 && str.trim().length > 0
同理
isEmpty 等價(jià)于 str == null || str.length == 0
isBlank 等價(jià)于 str == null || str.length == 0 || str.trim().length == 0

str.length > 0 && str.trim().length > 0 ---> str.length > 0

StringUtils方法的操作對(duì)象是java.lang.String類型的對(duì)象,是JDK提供的String類型操作方法的補(bǔ)充,并且是null安全的(即如果輸入?yún)?shù)String為null則不會(huì)拋出NullPointerException,而是做了相應(yīng)處理,例如,如果輸入為null則返回也是null等,具體可以查看源代碼)。

除了構(gòu)造器,StringUtils中一共有130多個(gè)方法,并且都是static的,所以我們可以這樣調(diào)用StringUtils.xxx()

1. public static boolean isEmpty(String str)
判斷某字符串是否為空,為空的標(biāo)準(zhǔn)是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)
判斷某字符串是否為空或長(zhǎng)度為0或由空白符(whitespace)構(gòu)成
下面是示例:
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("\t \n \f \r") = true //對(duì)于制表符、換行符、換頁符和回車符StringUtils.isBlank()均識(shí)為空白符
StringUtils.isBlank("\b") = false //"\b"為單詞邊界符
StringUtils.isBlank("bob") = false
StringUtils.isBlank(" bob ") = false


4. public static boolean isNotBlank(String str)
判斷某字符串是否不為空且長(zhǎng)度不為0且不由空白符(whitespace)構(gòu)成,等于!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


其他方法介紹:
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),如果變?yōu)閚ull或"",則返回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),如果變?yōu)閚ull或"",則返回""
下面是示例:
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()的區(qū)別):
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),如果變?yōu)閚ull或"",則返回null
下面是示例(注意和trimToNull()的區(qū)別):
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),如果變?yōu)閚ull或"",則返回""
下面是示例(注意和trimToEmpty()的區(qū)別):
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"
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容