C# 交换两个变量值
- 声明两个变量:int n1 = 10, n2 = 20;要求将两个变量交换,最后输出n1为20,n2为10。扩展(*):不使用第三个变量如何交换?
int n1 = 10;
int n2 = 20;
int temp;
temp = n1;
n1 = n2;
n2 = temp;
▲ 借用中间量
int n1 = 10;
int n2 = 20;
n1 = n1 + n2;
n2 = n1 - n2;
n1 = n1 - n2;
▲ 不用中间量
- 用方法来实现:将上题封装一个方法来做,方法有两个参数分别为num1,num2,将num1与num2交换。提示:方法有两个参数n1,n2,在方法中将n1与n2进行交换,使用ref。(*)
static void Main(string[] args)
{
int n1 = 10;
int n2 = 20;
Console.WriteLine("交换前:n1 = {0}, n2 = {1}", n1, n2);
SwapNum<int>(ref n1, ref n2);
Console.WriteLine("交换前:n1 = {0}, n2 = {1}", n1, n2);
Console.ReadKey();
}
static void SwapNum<T> (ref T a, ref T b)
{
T temp;
temp = a;
a = b;
b = temp;
}
运行结果:
交换前:n1 = 10, n2 = 20
交换前:n1 = 20, n2 = 10
参考:
1.link-01
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了