C#中|(位或)和||(邏輯或)


MSDN:
|:二元 | 運算符是為整型和 bool 類型預定義的。對於整型, | 計算操作數的按位“或”結果。對於 bool 操作數, | 計算操作數的邏輯“或”結果;也就是說,當且僅當兩個操作數均為 false 時,結果才為 false
&:& 運算符既可作為一元運算符也可作為二元運算符。

一元 & 運算符返回操作數的地址(要求 unsafe 上下文)。

為整型和 bool 類型預定義了二進制 & 運算符。對於整型,& 計算操作數的邏輯按位“與”。對於 bool 操作數,& 計算操作數的邏輯“與”;也就是說,當且僅當兩個操作數均為 true 時,結果才為 true。 

|位或運算的時候,他會將所有運算條件都算出結果,再判斷是否為真.
|| 邏輯或運算的時候,從前往后運算,若有一個成立,則不再繼續運算下面的條件.直接為真.

& 與 && 也是同理.
用 & 和 && 打個比方.
txtName 是個textbox.
if(txtName != null && txtName.Text != "")
{}

if(txtName != null & txtName.Text != "")
{}
會出現不同的效果.
當txtName = null的時候.
第2條語句會報錯.
因為第2條會一起執行 txtName != null 和 txtName.Text != ""
所以第2個條件報錯.
而第1句執行txtName != null的時候 得到 false
則不會繼續執行下去了.  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM