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)
相关推荐
架构师沉默7 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群8 小时前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL9 小时前
JVM 类加载:双亲委派机制
java·后端
NAGNIP9 小时前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
用户298698530149 小时前
Java HTML 转 Word 完整指南
java·后端
渣哥10 小时前
原来公平锁和非公平锁差别这么大
java
mudtools10 小时前
.NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
c#·.net
渣哥10 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K10 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
kfyty72510 小时前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构