C#中|(位或)和||(逻辑或)有什么区别?

这2个有所区别的小技巧.
|位或运算的时候,他会将所有运算条件都算出结果,再判断是否为真.
|| 逻辑或运算的时候,从前往后运算,若有一个成立,则不再继续运算下面的条件.直接为真.

& 与 && 也是同理.
用 & 和 && 打个比方.
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
则不会继续执行下去了.
原文地址:https://www.cnblogs.com/craig/p/1617015.html