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)
相关推荐
七夜zippoe几秒前
Spring与MyBatis整合原理及事务管理
java·spring·mybatis·事务·mapper
ZPC8210几秒前
FANUC 机器人 PR 寄存器
人工智能·python·算法·机器人
yong99903 分钟前
超宽带系统链路 MATLAB 仿真
开发语言·算法·matlab
yaoxin5211234 分钟前
278. Java Stream API - 限制与跳过操作全解析
java·开发语言·python
短剑重铸之日11 分钟前
《深入解析JVM》第五章:JDK 8之后版本的优化与JDK 25前瞻
java·开发语言·jvm·后端
love530love14 分钟前
【探讨】“父级/基环境损坏,子环境全部失效”,如何避免 .venv 受父级 Python 损坏影响?
java·开发语言·人工智能·windows·python·编程·ai编程
历程里程碑25 分钟前
LeetCode 560题:和为K子数组最优解
算法·哈希算法·散列表
java硕哥34 分钟前
Spring源码debug方法
java·后端·spring
qq_4017004140 分钟前
C/C++中的signed char和unsigned char详解
c语言·c++·算法
杂货铺的小掌柜1 小时前
MAC版IDEA常用快捷键
java·macos·intellij-idea