Java中的位运算符!用来做按位异或运算的。异或指的是相同位值相同异或结果为0,相同位异或值不同结果为1。
例如:int
i
=
2^3;
首先需要将数字转换成二进制数,然后进行运算。2的二进制数是10
3是11
10
11
^
-----------
01
所以,i中的结果是数字1。
^ 按位异或(Xor)是一种可逆运算符,只有在两个比较的位不同时其结果是1,否则结果为0。因此在计算时应先将数值转为二进制,进行位比较,然后把所得的结果转换为原来的进制数。如下例:0x03^0x05 => 11B ^ 101B=110B => 0x06。
按位异或。比如二进制 1001 ^ 1100 = 0101
0^0=0,1^1=0 ,1^0 = 1,0^1=1。