2012-09-14 21 views
1
System.out.println(4 | 3); 

输出为7,它最多可以添加3个数字,但这是如何工作的?什么是语法?System.out.println(4 | 3)

+0

所以很多重复的答案.. –

+0

而且每个都有自己的插图,哈哈 –

回答

6

二进制或

3 = 011 
    4 = 100 
    ---------- 
3|4 = 111 = 7 

它并不总是意味着除了

2 = 10 
    2 = 10 
2|2 = 10 = 2 
2

它做一个二进制或运算

0100 - this is a 4 
0011 - this is a 3 
| 
0111 - result is 7 
2

你到底想干什么?你是什么做的是二进制或两个数字的:

0b011 
|| 
0b100 
== 
0b111 -> 7. 
2
System.out.println(4 | 3); 

它是一种按位OR运算符。说明 -

4->100 
3->011 
    ---- 
    111 ->7 
1
3 = 0011 
4 = 0100 
|_____| 
    | 
    V 
    0111 
    | 
    V 
    7