int OR操作

时间:2013-09-18 19:51:48

标签: java operators

有人可以解释为什么以下程序打印输出为7

公共课测试{

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

}

我想知道如何在java int中发生OR操作。

2 个答案:

答案 0 :(得分:11)

那是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

答案 1 :(得分:1)

这些值具有位值:

1 -> 0001
2 -> 0010
5 -> 0101

当你按位或者他们一起得到你的时候:

     0111

是7