交换两个数是常见的需求。实际中我们经常采用的做法是通过一个tmp的中间变量来达到目的。但是如果我们现在不想使用那个中间变量,怎么破?so,以下提供两种方法
1.通过四则运算来实现
@Test
public void method_1() {
int a = 3;
int b = 4;
a = a + b;
b = a - b;
a = a - b;
System.out.println("a is: " + a);
System.out.println("b is: " + b);
}
此方法只有加法与减法运算,轻松即可满足需求。
2.通过亦或运算
@Test
public void method_2() {
int a = 3;
int b = 4;
a ^= b;
b ^= a;
a ^= b;
System.out.println("a is: " + a);
System.out.println("b is: " + b);
}
童鞋们请记住:一个数num连续跟同一个数亦或两次,得到的仍是num本身。