A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

int a=12;
int b=13;
如何在不利用第三个变量的情况下交换两者之间的值啊!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

4 个回复

倒序浏览
class SwapTest
{
    static void Swap(ref int m, ref int n)
    {
        m=m+n;
        b=m-n;
        a=m-n;
     }
     static void main()
    {
        int a=12,b=13
        Swap(ref a, ref b);
        Console.WriteLine("i={0},j={1}", a, b);  //输出结果:a=13,b=12
     }
}

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
a=a^b;
b=a^b;  //a^b^b=a;
a=a^b;  //a^a^b=b;
异或:   一个数异或这个数本身还是这个数

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
谢谢了!{:soso_e100:}
回复 使用道具 举报
上面两种的结合:
a=a+b;
b=a-b;
a=a-b;

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马