逻辑运算符“与,或,非”是比较简单的一个内容。但是“与”“或”的短路却是要注意的一个问题。例子:
int a=10 ,b=5;
① bool result=++a>50 &&++b>1;
② bool result=++a>5 &&++b>1;
③ bool result=++a>50 ||++b>1;
④ bool result=++a>5 ||++b>1;
console.Writeline("a={0},b={1}",a,b);
在式子1中,a和b输出的数值分别是11,5
在式子2中a和b输出的数值是分别是11,6
在式子3中a和b输出的数值是分别是11,6
在式子4中a和b输出的数值是分别是11,5
原因:在与的逻辑运算中,当第一个表达式错误的时候这时候式子短路,就不再执行后面的运算如①;在或的运算中,当第一个式子成立后,后面的式子将不再执行如④,当第一个式子不成立,那就继续执行后面的式子如③。
时间: 2024-12-11 19:15:12