异或位运算
位运算
程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。举个例子,6的二进制是110,11的二进制是1011,那么6 and 11的结果就是2,它是二进制对应位进行逻辑运算的结果(0表示False,1表示True,空位都当0处理)。
异或位运算规律
a ^ a = 0;自己和自己异或等于0
a ^ 0 = a;任何数字和0异或还等于他自己
a ^ b ^ c = a ^ c ^ b;异或运算具有交换律
使用异或位运算的例子
例1:不用额外变量交换两个变量的值。
public static void main(String[] args) {