浅析PHP中的i++与++i的区别及效率


Posted in PHP onJune 15, 2016

先看看基本区别:

i++ :先在i所在的表达式中使用i的当前值,后让i加1

++i :让i先加1,然后在i所在的表达式中使用i的新值

看一些视频教程里面写for循环的时候都是写 ++i 而不是 i++,上网搜索了一下,原来有效率问题

++i相当于下列代码

i += 1; 
return i;

i++相当于下列代码

j = i; 
i += 1; 
return j;

当然如果编译器会将这些差别都优化掉,那么效率就都差不多了。

再给大家详细说下++i 与 i++ 的区别

1、++i 的用法(以 a=++i ,i=2 为例)

先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ),

则最终 a 值等于 3 , i 值等于 3 。

所以 a=++i 相当于 i=i+1 ,a=i

2、i++ 的用法(以 a=i++ ,i=2 为例)

先将 i 值赋给变量 a (也就是 a=i ),然后 i 值加 1 (也就是 i=i+1 ),

则最终 a 值等于 2 ,i 值等于 3 。

所以 a=i++ 相当于 a=i , i=i+1

3、++i 与 i++

a=++i 相当于 i++ , a=i

a=i++ 相当于 a=i , i++

4、++i 与 i++ 单独使用时,相当于 i=i+1

如果赋给一个新变量,则 ++i 先将 i 值加 1 ,而 i++ 先将 i 赋给新变量。

以上所述是小编给大家介绍的PHP中的i++与++i的区别及效率的全部叙述,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
PHP定时执行计划任务的多种方法小结
Dec 19 PHP
基于PHP5魔术常量与魔术方法的详解
Jun 13 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
Apr 10 PHP
Yii实现MySQL多数据库和读写分离实例分析
Dec 03 PHP
PHP 魔术变量和魔术函数详解
Feb 25 PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 PHP
PHP加密解密函数详解
Oct 28 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
May 10 PHP
php实现微信公众号企业转账功能
Oct 01 PHP
php实现多站点共用session实现单点登录的方法详解
Sep 18 PHP
PHP数组访问常用方法解析
Sep 05 PHP
学习PHP session的传递方式
Jun 15 #PHP
php实现图片上传时添加文字和图片水印技巧
Apr 18 #PHP
PHP实现适用于文件内容操作的分页类
Jun 15 #PHP
PHP实现适用于自定义的验证码类
Jun 15 #PHP
php实现常见图片格式的水印和缩略图制作(面向对象)
Jun 15 #PHP
使用JavaScript创建新样式表和新样式规则
Jun 14 #PHP
PHP list() 将数组中的值赋给变量的简单实例
Jun 13 #PHP
You might like
PHP Squid中可缓存的动态网页设计
2008/09/17 PHP
php去除换行(回车换行)的三种方法
2014/03/26 PHP
php封装的smartyBC类完整实例
2016/10/19 PHP
php-fpm中max_children的配置
2019/03/15 PHP
基于jquery的图片懒加载js
2010/06/30 Javascript
JavaScript 5 新增 Array 方法实现介绍
2012/02/06 Javascript
解决js中window.open弹出的是上次的缓存页面问题
2013/12/29 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
技术男用来对妹子表白的百度首页
2014/07/23 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
详解AngularJS中自定义过滤器
2015/12/28 Javascript
jQuery stop()用法实例详解
2016/07/28 Javascript
Vue学习笔记进阶篇之函数化组件解析
2017/07/21 Javascript
vue实现全选和反选功能
2017/08/31 Javascript
慕课网题目之js实现抽奖系统功能
2017/09/19 Javascript
微信小程序radio组件使用详解
2018/01/31 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
详解基于原生JS验证表单组件xy-form
2019/08/20 Javascript
基于element-ui对话框el-dialog初始化的校验问题解决
2020/09/11 Javascript
Python实现获取某天是某个月中的第几周
2015/02/11 Python
Windows和Linux下Python输出彩色文字的方法教程
2017/05/02 Python
关于Python字符串显示u...的解决方式
2020/03/06 Python
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
巴西电子产品购物网站:Saldão da Informática
2018/01/09 全球购物
日本索尼音乐商店:Sony Music Shop
2018/07/17 全球购物
澳大利亚领先的在线药房:Pharmacy Online(有中文站)
2020/02/22 全球购物
澳大利亚在线床零售商:Bedworks
2020/09/01 全球购物
银行实习人员自我鉴定
2013/09/22 职场文书
表彰先进集体通报
2014/01/12 职场文书
解除财产保全担保书
2014/05/20 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
学校食堂食品安全责任书
2014/07/28 职场文书
美术教师个人工作总结
2015/02/06 职场文书
有关浪费资源的建议书
2015/09/14 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python
vue实现登陆页面开发实践
2022/05/30 Vue.js