c#两个数进行交换

1.使用中间变量的形式

csharp 复制代码
 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=10
            a1 = a2;//a1=20
            a2 = temp;//a2=10
        }
//注意:使用ref参数修饰符,把值传递改为引用传递,从而改变外部变量的值

2.位运算(异或法)

csharp 复制代码
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)
相关推荐
番茄去哪了几秒前
Retrofit框架调用第三方api
java·服务器·retrofit
扶摇接北海1761 分钟前
洛谷:B4488 [语言月赛 202602] 甜品食用
数据结构·c++·算法
直有两条腿6 分钟前
【机器学习】K-Means 算法
算法·机器学习·kmeans
xuhaoyu_cpp_java6 分钟前
XML学习
xml·java·笔记·学习
A923A6 分钟前
【洛谷刷题 | 第十天】
算法·洛谷·sprintf·sscanf
Mr_Xuhhh7 分钟前
LeetCode 热题 100 刷题笔记:数组与排列的经典解法
数据结构·算法·leetcode
爱丽_7 分钟前
AQS 的 CLH 同步队列:入队/出队、park/unpark 与“公平性”从哪来
java·开发语言·jvm
黄昏恋慕黎明7 分钟前
spring的IOC与DI
java·后端·spring
鱼鳞_12 分钟前
Java学习笔记_Day15
java·笔记·学习·排序算法
鹏程十八少18 分钟前
8. Android 深入插件化Shadow源码:揭秘插件Activity启动的完整链路(源码解析)
java·前端·面试