比如 a=3;b=8;
用三种方法来交换两个数的值?
第一种 定义一个临时比变量存储 :
int temp = a;
a = b;
b = temp;
第二种 用他们的和互减:
a = a + b; // a =11;
b = a - b; // b = 11 - 8
a = a - b ; // a = 11 - b
第三种 用异或 ,原理:异或同一个值两次,本身不变
a = a ^ b ;
b = a ^ b ; // (a ^ b) ^ b = a;
a = a ^ b; // (a ^ b) ^ a = b;