'&'
和'|'
是位运算符,而&&和||
是逻辑运算符
1.& (按位与,逻辑与)与 &&(短路与)
只有左右两边的表达式都为true时候,整个表达式结果为真
(a & (b++ > 0))
无论a为false还是true,&符号两边的语句都将执行
(a && (b++ > 0))
若a为false,&&符号右边的语句都将不执行
2.|(按位或,逻辑或)与 ||(短路或) 的区别
只要左右两边的表达式有一个为true,整个表达式结果为true
(a | (b++ > 0))
无论a为true还是false,&符号两边的语句都将执行
(a || (b++ > 0))
若a为true,&符号两边的语句都将执行
一个早期小程序
boolean x <