浅析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 相关文章推荐
聊天室php&mysql(二)
Oct 09 PHP
一个PHP+MSSQL分页的例子
Oct 09 PHP
main.php
Dec 09 PHP
E路文章系统PHP
Dec 11 PHP
通过PHP修改Linux或Unix口令的方法分享
Jan 30 PHP
thinkphp3.0 模板中函数的使用
Nov 13 PHP
php基于curl扩展制作跨平台的restfule 接口
May 11 PHP
PHP实现获取中英文首字母
Jun 19 PHP
PHP共享内存用法实例分析
Feb 12 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
Dec 21 PHP
php框架CodeIgniter使用redis的方法分析
Apr 13 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 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
对Session和Cookie的区分与解释
2007/03/16 PHP
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
php+xml结合Ajax实现点赞功能完整实例
2015/01/30 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
2017/10/17 PHP
javascript 面向对象全新理练之数据的封装
2009/12/03 Javascript
JavaScript 加号(+)运算符号
2009/12/06 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
jsTree 基于JQuery的排序节点 Bug
2011/07/26 Javascript
javascript判断是手机还是电脑访问网页的简单实例分享
2014/06/03 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
2014/12/19 Javascript
js鼠标点击图片实现随机变换图片的方法
2015/02/16 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
JavaScript中setUTCFullYear()方法的使用简介
2015/06/12 Javascript
深入理解JavaScript函数参数(推荐)
2016/07/26 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
2016/07/26 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
js实现鼠标拖动功能
2017/03/20 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
百度小程序之间的页面通信过程详解
2019/07/18 Javascript
python tkinter控件布局项目实例
2019/11/04 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
2019/12/19 Python
简单了解Python3 bytes和str类型的区别和联系
2019/12/19 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
高中生的自我鉴定范文
2014/01/24 职场文书
2014庆六一活动方案
2014/03/02 职场文书
广告语设计及教案
2014/03/21 职场文书
优秀安全员事迹材料
2014/05/11 职场文书
扬州个园导游词
2015/02/06 职场文书
关于调整工作时间的通知
2015/04/24 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
离婚协议书范本(2016最新版)
2016/03/18 职场文书
golang 实现菜单树的生成方式
2021/04/28 Golang
浅谈JS的原型和原型链
2021/06/04 Javascript
python中%格式表达式实例用法
2021/06/18 Python
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python