在阅读了“当天的面试问题”后,我偶然发现了一个关于xor操作的不熟悉的编程语法。可以而且有人会解释执行时会发生什么:
result = 2;
out.println(result ^= 10); // This gives a result of 8.
result = 3;
out.println(result ^= 10); // This gives a result of 9.
result = 4;
out.println(result ^= 10); // This gives a result of 14.
我很难搞清楚这个......
答案 0 :(得分:0)
这称为Bitwise XOR运算符。如果比较位的EITH是1,则为1.如果BOTH为1,或者BOTH为0,则结果为0.它实际上正在处理您要比较的数字的BIT级别。
示例:
0010 ^= (XOR) 1010 = 1000
(2) ^= (10) = (8)
0011 ^= (XOR) 1010 = 1001
(3) ^= (10) = (9)
0100 ^= (XOR) 1010 = 1110
(4) ^= (10) = (14)