题目:用三杯水、加法、异或交换两个数
分析:三杯水原理交换直接用第三个变量交换即可,即:
三杯水
int a = 4;
int b = 5;
int c = a;
a = b;
b = c;
System.out.println(a);
System.out.println(b);
打印台显示结果
5
4
加法
int a = 4;
int b = 5;
a = a + b;
b = a - b; //此时等同于a(a+b)-b
a = a - b; //此时等同于a(a+b)-b(a)//此时b已由上面的式子转换为了a
System.out.println(a);
System.out.println(b);
打印台显示结果
5
4
异或^
int a = 4;
int b = 5;
a = a ^ b;
b = a ^ b; //此时等同于a(a^b)-b
a = a ^ b; //此时等同于a(a^b)-b(a)//此时b已由上面的式子转换为了a
System.out.println(a);
System.out.println(b);
打印台显示结果
5
4