陣列或集合呼叫前,判斷是否為空

2021-08-17 15:09:48 字數 566 閱讀 9875

首先,了解一下null和.length、.size的區別:

null就是意思只定義沒有建立物件,如 object o;如果呼叫o.length會報錯,因為它沒有任何.***功能。

.length則是判斷這個陣列的元素個數,.size類似。

然後,寫好的程式中如果我們沒有稍加判斷,在呼叫的時候,如果為空或長度小於零,這時候會報錯,我們應該提前規避掉這種錯誤。

錯誤寫法:

if(***.length>0 && ***!=null  )
從上面在呼叫的時候,先判斷***.length>0,在當陣列為null時則會報空指標異常

正確寫法:

if(***!=null && ***.length>0)
先判斷是否為空。因為中間是用&&連線,只有當兩邊都是true時條件才為true,所以當左邊判斷為false時,第二個判斷不會繼續判斷。所以當物件為空時,不進行第二個判斷,也就不會呼叫length而導致異常。綜上,這個判斷是只有當物件不為空,並且陣列長度大於零也就是有值的時候才進行後續操作。集合的size與陣列的length類似。

怎麼判斷List集合是否為空

1.isempty 判斷list有沒有元素 而size 返回list有幾個元素,返回元素的個數 故 list.isempty 和list.size 0 沒有區別 建議判斷乙個集合有無元素 用isempty 方法.這個方法清晰,簡明,一目了然!2.這就相當與,你要喝水,首先使用以下語句生成水杯 use...

js 判斷是否為空物件 空陣列

js 判斷是否為空物件 空陣列 當需要判斷引數是否為空時,總希望 js 能夠提供原生的判斷方法,可惜並沒有,只能自己封裝了。isempty function obj 檢驗陣列 if array.prototype.isprototypeof obj obj.length 0 檢驗物件 if obje...

js 判斷是否為空物件 空陣列

判斷引數是否為空函式 isempty function obj 檢驗陣列 if array.prototype.isprototypeof obj obj.length 0 檢驗物件 if object.prototype.isprototypeof obj object.keys obj leng...