Java运算符
-
与运算符 &
int x=9;//1001 int y=8;//1000 int z=x&y;//1000
与运算符 要求两个对应位皆为1,则结果为1
-
或运算符 |
int x=9;//1001 int y=8;//1000 int z=x|y;//1001
两个位只要有一个为1,那么结果就是1,否则就为0
-
非运算符 ~
int z=11;//1011 int k=~z;//-12
如果位为0,结果是1,如果位为1,结果是0
-
位异或运算符 ^
int x=9;//1001 int y=2;//0010 int z=x^y;//1011
参与运算的两个数的二进制值按位比较,如果两个相应位相同,则结果为 0,否则为 1
-
左移运算符 <<
int z=11;//1011 int o=z<<1;//10110
进行左移x位,低位补 0
-
右移位运算符 >>
int z=11;//1011 int o=z>>2;//0010
右移两位,高位补 0