在Ruby中使用插入符号(^)

时间:2011-08-23 14:57:58

标签: ruby operators caret

1 ^ 1
# => 0

1 ^ 2
# => 3

5 ^ 6
# => 3

这些是我得到的结果。请问,有人解释^的工作原理吗?

1 个答案:

答案 0 :(得分:33)

这是bitwise XOR operator.

对于操作数的二进制表示中的每个位,如果操作数中的相应位之一为1,则按位XOR将获得1位,但不是两者,否则XOR将获得0位。这是一个例子:

5     = 101
6     = 110
5 ^ 6 = 011 = 3