Raf*_*ael 1 java bitwise-operators
有人可以解释这个java按位运算符的行为??
System.out.println(010 | 4); // --> 12
System.out.println(10 | 4); // --> 14
Run Code Online (Sandbox Code Playgroud)
谢谢!
第一个数字被解释为八进制.所以010 == 8.
从那开始,很容易看出来
8d | 4d == 1000b | 0100b == 1100b == 12d
Run Code Online (Sandbox Code Playgroud)
第二个数字被解释为十进制数,产生
10d | 4d == 1010b | 0100b == 1110b == 14d
Run Code Online (Sandbox Code Playgroud)
(其中d表示十进制数,b表示二进制数.)
| 归档时间: |
|
| 查看次数: |
79 次 |
| 最近记录: |