今天偶然间看到程序中有这样一个操作, 乍看一脸懵逼

  int a = 6;
  int b = 5;
  a |= b;
  System.out.println(a);

首先 介绍一下逻辑运算

&  与   相同为1
|  或   有1为1

其次介绍一下二进制

6  -->  0110
4  -->  0100
5  -->  0101

实验

int a = 6;
int b = 4;
a|=b;
输出: 6
b = 5;
a|=b;
输出: 7


6|4
0110
0100
------
0110  <--- 6

6|5
0110
0101
------
0111  <--- 7

更多推荐

java中 “|=“是什么意思