java运算符
1.与运算符:&
-
两个操作数中位都为1,结果才为1,否则结果为0(二进制)
int a=129; int b=128; System.out.println("a 和b 与的结果是:"+(a&b)); a 和b 与的结果是:128
-
“a”的值是129,转换成二进制就是10000001,而“b”的值是128,转换成二进制就是10000000。根据与运算符的运算规律,只有两个位都是1,结果才是1,可以知道结果就是10000000,即128。
2.或运算符:|
- 两个位只要有一个为1,那么结果就是1,否则就为0
3.非运算符:~
- 如果位为0,结果是1,如果位为1,结果是0
4.异或运算符:^
- 两个操作数的位中,相同则结果为0,不同则结果为1
- 如:判断数组中只出现一次的数
5.Java中的<< 和 >> 和 >>> :
<<表示左移,不分正负数,低位补0;
>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1;
>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0