// Swapping value between two integer without using temp variable.
int a = 5;
int b = 7;
Console.WriteLine("Before Swap.");
Console.WriteLine("value of A is: {0}", a);
Console.WriteLine("value of B is: {0}", b);
Console.ReadLine();
O / P: 在交换之前。 A的值是:5 A的值是:7
交换后。 A的值是:7 A的值是:5
那么如何在不使用临时变量的情况下交换两个整数值?
答案 0 :(得分:2)
尝试:
a = a + b;
b = a - b;
a = a - b;
答案 1 :(得分:1)
第一种方法
a = a + b;
b = a - b;
a = a - b;
第二种方法
a ^= b;
b ^= a;
a ^= b;
答案 2 :(得分:0)
a = a + b;
b = a - b;
a = a - b;
答案 3 :(得分:0)
您需要使用XOR运算符:
a = a ^ b;
b = a ^ b;
a = a ^ b;
这是有效的,因为使用相同的值应用两次XOR会取消操作:
a ^ b ^ b => a