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)
相关推荐
Porunarufu7 小时前
博客系统UI自动化测试报告
java
Aurorar0rua8 小时前
CS50 x 2024 Notes C - 05
java·c语言·数据结构
Cosmoshhhyyy8 小时前
《Effective Java》解读第49条:检查参数的有效性
java·开发语言
布谷歌8 小时前
常见的OOM错误 ( OutOfMemoryError全类型详解)
java·开发语言
6Hzlia9 小时前
【Hot 100 刷题计划】 LeetCode 739. 每日温度 | C++ 逆序单调栈
c++·算法·leetcode
eLIN TECE9 小时前
springboot和springframework版本依赖关系
java·spring boot·后端
良木生香9 小时前
【C++初阶】:STL——String从入门到应用完全指南(1)
c语言·开发语言·数据结构·c++·算法
老神在在0019 小时前
Spring Bean 的六种作用域详解
java·后端·spring
仙草不加料9 小时前
互联网大厂Java面试故事实录:三轮场景化技术提问与详细答案解析
java·spring boot·微服务·面试·aigc·电商·内容社区
程序员老邢9 小时前
【技术底稿 19】Redis7 集群密码配置 + 权限锁死 + 磁盘占满连锁故障真实排查全记录
java·服务器·经验分享·redis·程序人生·微服务