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)
相关推荐
山峰哥几秒前
现代 C++ 的炼金术:铸就高性能与高可维护性的工程实践
java·开发语言·前端·数据结构·c++
27669582923 分钟前
闪购商家端 mtgsig
java·python·c#·node·c·mtgsig·mtgsig1.2
不能只会打代码3 分钟前
力扣--3578. 统计极差最大为 K 的分割方式数(Java实现,代码注释及题目分析讲解)
算法·leetcode·动态规划·滑动窗口
小尧嵌入式5 分钟前
QT软件开发知识流程及秒表计时器开发
开发语言·c++·qt·算法
JIngJaneIL9 分钟前
基于Java在线考试管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
雨落秋垣10 分钟前
SpringCache 缓存:注意事项、问题解决与优化策略
java·spring·缓存
计算机毕设指导612 分钟前
基于微信小程序的篮球场馆预订系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
JIngJaneIL13 分钟前
基于Java音乐管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
毕设源码-朱学姐15 分钟前
【开题答辩全过程】以 驾校信息管理系统为例,包含答辩的问题和答案
java·spring boot
Hello.Reader18 分钟前
Flink SQL 窗口表值函数TUMBLE / HOP / CUMULATE / SESSION
java·sql·flink