-2

^Java 语法中的 (caret) 是什么意思?为什么6^3返回5

4

2 回答 2

17

这是按位异或运算符。XOR 是异或。

二进制中的 6(假设 4 位)是0110,二进制中的 3 是0011

所以,我们得到:

0110
0011 XOR
----
0101

并且0101是 5。

于 2012-04-18T20:25:21.537 回答
2

请参阅按位和位移运算符

于 2012-04-18T20:26:38.913 回答