1.使用中间变量的形式
private static void Main(string[] args){int a1=10;int a2=20;ChangeNumber(ref a1,ref a2)onsole.WriteLine($"a1的值{a1},a2的值{a2}");Console.ReadLine();}public static void ChangeNumber(ref int a1, ref int a2){int temp = a1;//temp=10a1 = a2;//a1=20a2 = temp;//a2=10}
//注意:使用ref参数修饰符,把值传递改为引用传递,从而改变外部变量的值
2.位运算(异或法)
a与b异或两次,结果仍然是a:a==a^ b ^ b
a=a ^ b;
b=a ^b; (b=a ^ b ^ b=a)
a=a ^ b; (a= a^ b^ a=b)