在这里它是逻辑运算符.
&和&&的区别:
当它俩都是逻辑运算符时,不同点为:
&&可理解为短路运算符,即第一个条件若是false那么第二个条件不必判断.
&如果第一个条件是false那么第二个条件它还是会判断.
你自己可以试试如下代码:
boolean a = false;
int b = 0;
if(a & (b++)>0){}
System.out.println(b);
肯定会输出1,这就证明以上所说的.
&是逻辑与,它的执行是,先判断左边的,不管是false还是true,都还要判断右边的。也就是两边的表达式都要判断。
&&是短路与,如果左边为false,就不再判断右边的。否则,才去判断右边的。
一般都用&&比较多。
逻辑运算符啊,
另外&& 是 中断运算符 就是 有 A&&B&&C 这样的情况,如果 A 或者B 有一个事 FALSE 的话,C 就根本不运算的。 而用 & 则会傻傻得再比一次 false & C
“&&”表示的是与,也就是说并且的关系,那么只有满足所有的与关系,那么结果才为真。
举例:1==1&&2==4&&3==3,此时的结果就是“真与假与真”,结果就是假。
“||”表示的是或,也就是只要满足一个条件,那么此时结果就是真。
举例:1==1||2==4||3==3,此时的结果就是“真或假或真”,结果就是真。
&是位运算符!