問題:
之前用 list!=null 來判斷list是否為空,但發現,定義一個list后,即使里面並沒有加入任何元素,返回的結果仍舊是 true,
其實,本意是希望在沒有任何元素時,返回 false,下面是關於判斷邏輯的詳細解析:
1、如果想判斷list是否為空,可以這么判斷:
if(list == null || list.size() ==0 ){
//為空的情況
}else{
//不為空的情況
}
2、list.isEmpty() 和 list.size()==0 的區別
答案:沒有區別 。isEmpty()判斷有沒有元素,而size()返回有幾個元素, 如果判斷一個集合有無元素 建議用isEmpty()方法.比較符合邏輯用法。
3、list!=null 跟 !list.isEmpty()有什么區別?
這就相當與,你要要到商店買東西
list!=null 首先判斷是否有商店
!list.isEmpty() 沒有判斷商店是否存在,而是判斷商店是否有東西
總結用法:如果連商店都沒有,何來的的東西可賣
所以一般的判斷是:
if(list!=null && !list.isEmpty()){
//不為空的情況
}else{
//為空的情況
}
