VB.net 與 C# 的對應邏輯運算子

自由精靈發表於2014-11-28

And:對兩個Boolean表示式執行邏輯和。
AndAlso:與AndAlso類似,關鍵差異是AndAlso顯示短路行為,如果AndAlso中的第一個表示式為False,則不計算第二個表示式。
Or:對兩個Boolean表示式執行邏輯或。
OrElse:與Or類似,關鍵差異是OrElse顯示短路行為,如果OrElse中的第一個表示式為True,則不計算第二個表示式。

此時才明白上面的程式碼是兩個判斷都執行了,哪怕obj為Nothing時,obj.IsDisposed也會執行到,自然就會出現Null異常了,把Or改成OrElse後問題解決。

VB.net 與 C# 的對應
And        對應     &&
AndAlso    對應      &
Or         對應      ||
OrElse     對應      |  

相關文章