方法1:
int a = 5;
int b = 10;
//定义中间变量
int temp;
temp = a;//temp=5
a = b;//a=10
b = temp;//b=5
Console.WriteLine($"交换后a:{a},b:{b}");
方法2:
//两数交换
int a = 5;
int b = 10
//方法2
a = a + b;//a=15
b = a - b;//a+b-b=a=5
a = a - b;//a+b-a=b=10
Console.WriteLine($"交换后a:{a},b:{b}");
方法3:
//两数交换
int a = 5;
int b = 10;
//方法三(使用位运算符异或)二进制数两个对应的都为0或都为1 结果为0 反之为1
//a=5的二进制 0101 b=10的二进制 1010
a = a ^ b;//1111
b = a ^ b;//(a^b)^b=0101=5
a = a ^ b;//(a^b)^((a^b)^b) 1010=10
Console.WriteLine($"交换后a:{a},b:{b}");