不用临时的变量 交换两个数的两种方法
1.异或算法(这种方法不借助第三个变量,也不会产生溢出,比较安全,但仅限整数类型)
int a = 10; int b = 5; a ^= b; b ^= a; a ^= b; Console.WriteLine("{0} {1}", a, b);
2.直接求差值
int a=10; int b=5; a = a + b; b = a - b; a = a - b;
3.利用ref封装方法
int a = 10; int b = 20; Swap(ref a, ref b); Console.WriteLine(a); Console.WriteLine(b); Console.ReadKey(); private static void Swap(ref int n1,ref int n2) { int tmp = n1; n1 = n2; n2 = tmp; }