‘&’无论条件是否满足,两个条件都会执行,‘&&’如果前面一个为false,则直接返回false,后面一个就不执行了- int i = 0, j = 1;
- if (i > 0 & j ++ > 0) {
- //首先执行i>0为false,然后还会继续执行j++>0,返回false,结果j为2。
- }
- Console.WriteLine(j);
- int m = 0, n = 1;
- if (m > 0 && n ++ > 0) {
- //首先执行m>0为false,就不会再继续执行n++>0,直接返回false,结果n还是1。
- }
- Console.WriteLine(n);
复制代码 |