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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kane 中级黑马   /  2014-12-4 11:51  /  1196 人查看  /  9 人回复  /   2 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 kane 于 2014-12-4 11:58 编辑

最近我整理了一下swap()的方法的各种交换方式,希望对大家有帮助 :
  1. void swap()//方法一
  2. {
  3.   int y = 10;
  4.   int temp = x;
  5.   x = y;
  6.   y = temp;
  7. }
  8. void swap()//方法二
  9. {
  10.   int x = 5;
  11.   int y = 10;
  12.   x = x ^ y;
  13.   y = x ^ y;
  14.   x = x ^ y;
  15. }
  16. void swap()//方法三
  17. {
  18.   int x = 5;
  19.   int y = 10;
  20.   x = x + y;       //x=15,15=5+10
  21.   y = x - y;       // x=30,y =5,5= 15 - 10
  22.   x = x - y;        //x=10,y=5,x =10 = 15 - 5


  23.   x = x * y;       //x=50,x=50=5*10
  24.   y = x / y;       //x=50,y =5, 5=50 / 10
  25.   x = x / y;        //x=10,y=5,10 = 50 / 5

  26. }
复制代码













点评

不错,感谢分享  发表于 2014-12-4 14:24

评分

参与人数 1黑马币 +3 收起 理由
船长 + 3 赞一个!

查看全部评分

9 个回复

倒序浏览
学习了:)
回复 使用道具 举报
第三种只是用于数值交换吧
回复 使用道具 举报
relice 发表于 2014-12-4 13:17
第三种只是用于数值交换吧

是的,不能用于字符串哈:lol
回复 使用道具 举报
学习了。
回复 使用道具 举报
感谢分享,学习下
回复 使用道具 举报
第三个方法有局限性,只能是正数
回复 使用道具 举报
第一种用的多
回复 使用道具 举报
三种方法各有不同的用处。学习了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马