Java 中的管道 (|) 运算符
我在Java中有这个声明:
System.out.println(3|4);
为什么输出为 7?
我在Java中有这个声明:
System.out.println(3|4);
为什么输出为 7?
这是一个按位 OR 操作。它在二进制级别上修改事物。
011 3
in binary: | 100 in decimal: | 4
___ ___
111 7
使用科学模式打开 Windows 计算。您可以在十进制和二进制(和十六进制)之间翻转,并执行按位运算,包括 or、and、xor 等。
要按位或在脑海中或在纸上执行,请比较同一序数的每个数字。如果任一数字为 1,则该序号处的结果将为 1。
运算符执行“按位 OR”。如果任一位为 1,则两位上的按位 OR 的输出为 1;如果两位均为 0,则两位的按位 OR 的输出为 0。两个数字上的按位 OR 只是分别对每个位执行按位 OR。|
以下是工作原理:3|4
3: 00000011
4: 00000100
--------------
3|4: 00000111 = 7