i++和++i和i+=1之间的区别(效率)
2016-05-10 14:57
239 查看
剑指offer的代码中,for循环中全都用的是++i而不是之前惯用的i++,今天查了查才知道是两者的效率不一样。
++i相当于下列代码:
i += 1;
return i;
i++相当于下列代码 :
temp = i;
i += 1;
return temp;
i=i+1相当于下列代码 :
temp = i + 1;
i = temp;
可见++i不需要给中间变量赋值,++i的汇编比i++要简洁一些~,有一丢丢性能上的差别。
++i相当于下列代码:
i += 1;
return i;
i++相当于下列代码 :
temp = i;
i += 1;
return temp;
i=i+1相当于下列代码 :
temp = i + 1;
i = temp;
可见++i不需要给中间变量赋值,++i的汇编比i++要简洁一些~,有一丢丢性能上的差别。
相关文章推荐
- java 汉诺塔问题
- thinkphp常用功能
- linux的文件控制
- IOS 单例模式的写法
- 数据分析/数据挖掘/机器学习---- 必读书目
- redis学习笔记(13)---列表命令及实现
- java定时任务--Timer、TimerTask
- js节点操作
- 装饰模式decorator
- [Linux] Linux系统(文件操作)
- JS实现登录页面记住密码和enter键登录方法推荐
- PMS 启动流程
- 详解JavaScript中的自定义事件编写
- 学习Linux决心书
- 网络安全
- 让Elasticsearch集群冷热分享、读写分离
- 理解OAuth 2.0
- C语言程序的基本语句能完成功能的体会 杜鑫达
- angular controller不执行
- UI设计师的迷茫