public static void swap1(Num num)
{
num.a = num.a + num.b;
num.b = num.a - num.b;
num.a = num.a - num.b;
}
使用异或运算符:我们知道,任何数与0异或后仍然为它本身,两个相同的数异或后为0。
static class Num
{
int a;
int b;
}
public static void swap2(Num num)
{
num.a = num.a ^ num.b;
num.b = num.a ^ num.b;
num.a = num.a ^ num.b;
}
{
num.a = num.a ^ num.b;
num.b = num.a ^ num.b;
num.a = num.a ^ num.b;
}