Java中与&、或|、异或^运算符的使用规则与区别

Java中与&、或|、异或^运算符都是二进制的运算,通过对两组二进制的每一位对比得出结果。

运算规则

  • 与&
    1:1时为1(概率25%),其他都为0(概率75%)
  • 或|
    0:0时为0(概率25%),其他都为1(概率75%)
  • 异或^
    0:0或1:1时为0(概率50%),0:1或1:0时为1(概率50%)
    Java中与&、或|、异或^运算符的使用规则与区别

运算步骤
如图,两个数字X、Y,分别进行与&、或|、异或^运算:

  1. X、Y如果是十进制的话,先算出X、Y二进制值;
  2. 把两组二进制值平行放在一起,右边对齐,左边不足补0;
  3. 根据与&、或|、异或^的运算规则求每一位的值;
  4. 运算结束,结果为对比后的二进制值,如果需要可以转换成十进制。