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 小时前
287. 寻找重复数
数据结构·算法·leetcode·深度优先·图论
抓个马尾女孩7 小时前
位置编码:绝对位置编码、相对位置编码、旋转位置编码
人工智能·深度学习·算法·transformer
Memory_荒年7 小时前
TiDB:当 MySQL 遇上分布式,生了个“超级混血儿”
java·数据库·后端
asom227 小时前
DDD(领域驱动设计) 核心概念详解
java·开发语言·数据库·spring boot
今儿敲了吗7 小时前
46| FBI树
数据结构·c++·笔记·学习·算法
小辉同志7 小时前
139. 单词拆分
算法·动态规划
oem1108 小时前
C++中的访问者模式变体
开发语言·c++·算法
IronMurphy8 小时前
【算法二十七】230. 二叉搜索树中第 K 小的元素 199. 二叉树的右视图
算法·深度优先
暮冬-  Gentle°8 小时前
C++中的工厂方法模式
开发语言·c++·算法
大傻^8 小时前
LangChain4j Spring Boot Starter:自动配置与声明式 Bean 管理
java·人工智能·spring boot·spring·langchain4j