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)
相关推荐
全靠bug跑21 小时前
Spring Cache 实战:核心注解详解与缓存过期时间配置
java·redis·springcache
Swift社区21 小时前
LeetCode 465 最优账单平衡
算法·leetcode·职场和发展
聆风吟º21 小时前
【数据结构手札】空间复杂度详解:概念 | 习题
java·数据结构·算法
weixin_4450547221 小时前
力扣热题51
c++·python·算法·leetcode
计算机程序设计小李同学21 小时前
基于SpringBoot的个性化穿搭推荐及交流平台
java·spring boot·后端
是一个Bug21 小时前
50道核心JVM面试题
java·开发语言·面试
地平线开发者21 小时前
linux 常见稳定性问题分析方法
算法·自动驾驶
朱朱没烦恼yeye21 小时前
java基础学习
java·python·学习
s砚山s21 小时前
代码随想录刷题——二叉树篇(九)
算法
烛阴21 小时前
C# 正则表达式(5):前瞻/后顾(Lookaround)——零宽断言做“条件校验”和“精确提取”
前端·正则表达式·c#