java 位运算符,逻辑运算符
逻辑运算符;布尔值时使用
a=true;b=false
&: 逻辑或 例:a & b=false;
|: 逻辑与 例:a | b=true;
!:逻辑非 例:!a=false; !b=true;
^:逻辑异或 例:a^b =true; true^true=false ; false^ false=false;
&&:短路与 b&&a=false; b为false,则a不会再执行到
||:短路非 a||b=true ; a为true,则b不会再执行到
--------------------------------------------------
负数:
十进制转为二进制:1、取绝对值 2、转为二进制 3、逐位取反 4、加1
二进制转为十进制:1、减1 2、逐位取反 3、转为十进制 4、乘-1
&:按位与
int i =4&3;
0100&0011 = 0000
i=0;
|:按位或
int i =4&3;
0100 | 0011 =0111
i=7;
^:按位异或
int i =4^5
0100 ^ 0101=0001
i=1;
~:按位取反
int i =~4
~00000100 =11111011转换为十进制
1、减1 11111010
2、取反 00000101
3、转十进制 5
4、乘-1 -5