java中的按位与是什么意思

Python012

java中的按位与是什么意思,第1张

按位与是整数运算,整数以二进制形式,每一位进行与运输,例如6与7的计算过程,6和7的二进制分别是110、111,进行与运输要求两个数都为1结果为,否则结果为0,110与111的结果为110,也就是6与7=6。

看明白了吧,我是不是太罗嗦了点~~~

&是JAVA中的位逻辑运算符,称“按位与”,运算规则是:“&”两个运算数都为1时,结果为1,其余结果为0 ,即:即:

0&0=0,0&1=0,1&0=0,1&1=1

用途:

(1)清零

运算对象:原来的数中为1的位,新数中相应位为0。

(2)取一个数中某些指定位。

如想要取一个整数a(占2个字节)的低(高)字节,只需将a与八进制的377(177400)按位与即可。

(3)保留某一个数的某一位。

与一个数进行&运算,此数在该位取1。

例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二进制补码) 00000001 (1的二进制补码)可见9&5=1。

按位与运算通常用来对某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 运算 ( 255 的二进制数为0000000011111111)。

按位与 &

按位或 |

转为二进制操作即可

&: 两位同时为“1”,结果才为“1”,否则为0

|:参加运算的两个对象只要有一个为1,其值为1。

按位与:

5: 0000 0101

9: 0000 1001

1: 0000 0001

按位或:

5: 0000 0101

9: 0000 1001

13: 0000 1101