(&和 |)运算是把逻辑表达式全部计算完,而(&&和||)则具有短路功能,所谓短路功能是指系统从左至右进行逻辑运算,一旦出现计算结果已经确定的情况,则计算被终止。
例如:只要运算左端的表达式的值为false,则系统无论运算右端的值是true或为false,其结果都为false。
问题:
127&128=127 127|128=255
&运算法则
二进制&运算规则:1&1=1 1&0=0 0&0=0
二进制|运算规则:1|1=1 1|0=1 0&0=0
127的二进制为 0000 1111 1111
128的二进制为0001 0000 0000
所以按位运算与的结果就为 0000 1111 1111,转成十进制结果就为127
按位运算或的结果为0001 1111 1111,转成十进结果为255