java判斷空的實(shí)現(xiàn)方法
字符串判空
字符串為空分為兩種情況
1)“”:表示分配了內(nèi)存空間,值為空字符串,有值。
2)null:未分配內(nèi)存空間,無值,值不存在。
為空的標(biāo)準(zhǔn)為:str == null 或 str.length()==0
1.判斷為空
isEmpty()方法,判斷是否為空,是否為空字符串(在String為null時(shí),會(huì)出現(xiàn)空指針錯(cuò)誤,isEmpty()方法底層是判斷長度)isBlank()方法,是判斷字符串是否為空,空格、制表符、tab。
public static boolean isEmpty(CharSequence cs) { return cs == null || cs.length() == 0; } public static boolean isBlank(CharSequence cs) { int strLen; if (cs != null && (strLen = cs.length()) != 0) { //判斷是否為空格、制表符、tab for(int i = 0; i < strLen; ++i) { if (!Character.isWhitespace(cs.charAt(i))) { return false; } } return true; } else { return true; } }
2.判斷不為空
isNotEmpty()、isNotBlank()
推薦使用lang3下的StringUtiles工具類中
StringUtils.isBlank()和StringUtils.isNotBlank(),它會(huì)過濾空格。
List判空
1.判斷l(xiāng)ist不為空
- 方法1:list != null && !list.isEmpty()
- 方法2:list != null && list.size() > 0
注:
- list!=null:判斷是否存在list,null表示這個(gè)list不指向任何的東西,如果為空時(shí)調(diào)用它的方法,那么就會(huì)出現(xiàn)空指針異常。
- list.isEmpty():判斷l(xiāng)ist里是否有元素存在
- list.size():判斷l(xiāng)ist里有幾個(gè)元素
所以判斷l(xiāng)ist里是否有元素的最佳的方法是:
if(list != null && !list.isEmpty()){ //list存在且里面有元素 }
2.判斷l(xiāng)ist為空
- 方法1:list == null || list.size() == 0
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot2學(xué)習(xí)之springboot與spring區(qū)別分析
這篇文章主要為大家介紹了SpringBoot2學(xué)習(xí)之springboot與spring區(qū)別分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05SpringBoot?@InitBinder注解綁定請求參數(shù)的過程詳解
這篇文章主要介紹了SpringBoot?@InitBinder注解綁定請求參數(shù),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04SpringSecurity框架下實(shí)現(xiàn)CSRF跨站攻擊防御的方法
CSRF是一種網(wǎng)絡(luò)攻擊方式,也可以說是一種安全漏洞,這種安全漏洞在web開發(fā)中廣泛存在。這篇文章主要介紹了SpringSecurity框架下實(shí)現(xiàn)CSRF跨站攻擊防御,需要的朋友可以參考下2019-12-12Java之通過OutputStream寫入文件與文件復(fù)制問題
這篇文章主要介紹了Java之通過OutputStream寫入文件與文件復(fù)制問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04通過實(shí)例解析java8中的parallelStream
這篇文章主要介紹了通過實(shí)例解析java8中的parallelStream,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Java中String類(字符串操作)的10個(gè)常見問題和解決方法
這篇文章主要介紹了Java中String類(字符串)操作的10個(gè)常見問題,需要的朋友可以參考下2014-04-04