java - 整数或运算

标签 java operators

谁能解释为什么下面的程序打印输出为 7

公开课测试{

 public static void main(String []args){
     int i =1;
     int j =2;
     int k= 5;
    System.out.println(i|j|k);
 }

我想知道 OR 运算在 java int 中是如何发生的。

最佳答案

那是bitwise-OR operator in Java .为简单起见,最后 8 位:

1 = 00000001
2 = 00000010
5 = 00000101
============
7 = 00000111 // 1 where the corresponding bit is set in any of the above numbers

关于java - 整数或运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18881127/

相关文章:

C++ 域特定的嵌入式语言运算符

operators - 方案:为什么在重新定义预定义运算符时会出现这种结果?

Prolog, "or"规则语句运算符

java - 加载 JNI 库时,映射如何与实际库名称发生

java - 有没有办法异步启动 EJB bean 的方法而不将该方法公开为公共(public)方法?

java - 类不是抽象的,不会覆盖 java.util.timertask 中的抽象方法 run()

c# - * 运算符和类型转换器

java - 如何测试一个方法内部调用了不同的方法?

java - Collections.max 方法类型参数声明签名 <T extends Comparable<?超T>>解释

Javascript。 | & 和 toString