标签: ruby operators caret
1 ^ 1 # => 0 1 ^ 2 # => 3 5 ^ 6 # => 3
这些是我得到的结果。请问,有人解释^的工作原理吗?
^
答案 0 :(得分:33)
这是bitwise XOR operator.
对于操作数的二进制表示中的每个位,如果操作数中的相应位之一为1,则按位XOR将获得1位,但不是两者,否则XOR将获得0位。这是一个例子:
5 = 101 6 = 110 5 ^ 6 = 011 = 3