集合list判斷null

今天在改bug時,遇到判斷一個值A是否null的狀況,A值是從數據庫查詢出來的;
可是在個人特殊處理下,用sql語句在數據庫中查詢是沒有值的,可是判斷中A值是不等於null的。
最後,查看dao層被調用的方法發現,return (list == null || list.isEmpty()) ? "" : list.get(0);
其中list是集合,上一位同事寫的判斷返回值有問題,在Java中,""是不等於null的。
接下來,順帶講講集合list與空之間的一些聯繫
1. 判斷集合list是否爲空能夠這樣
if(list == null || list.size() == 0)

2. list.size() == 0 與 list.isEmpty()的區別
沒有區別,list.size()返回集合list中有多少個元素,而list.isEmpty()中是否有元素。
若是業務中,有判斷集合list中是否有元素時能夠用list.isEmpty()比較符合邏輯

3. list == null 與 list.isEmpty() 是否有區別
list == null 判斷集合是否爲空,能夠理解爲這個集合是否存在
list.isEmpty() 判斷集合是否有元素,這個集合是存在的,這是它們二者的區別
相關文章
相關標籤/搜索