浅析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 url地址栏传中文乱码解决方法集合
Jun 25 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
Nov 01 PHP
php foreach 参数强制类型转换的问题
Dec 10 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
利用php绘制饼状图的实现代码
Jun 07 PHP
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
Jul 03 PHP
采用ThinkPHP中F方法实现快速缓存实例
Jun 13 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
Nov 27 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
Jun 20 PHP
php实现数组中出现次数超过一半的数字的统计方法
Oct 14 PHP
PHP异常类及异常处理操作实例详解
Dec 19 PHP
laravel框架模型、视图与控制器简单操作示例
Oct 10 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
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
[EPIC] Larva vs Flash ZvT @ Crossing Field [2017-10-09]
2020/03/17 星际争霸
自制汽车收音机天线:收听广播的技巧和方法
2021/03/02 无线电
Session的工作方式
2006/10/09 PHP
smarty静态实验表明,网络上是错的~呵呵
2006/11/25 PHP
php文件夹与文件目录操作函数介绍
2013/09/09 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
在JavaScript中使用inline函数的问题
2007/03/08 Javascript
jquery放大镜效果超漂亮噢
2013/11/15 Javascript
包含中国城市的javascript对象实例
2015/08/03 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
基于jQuery实现放大镜特效
2020/10/19 Javascript
JavaScript动态设置div的样式的方法
2015/12/26 Javascript
使用jquery给新生的th绑定hover事件的实例
2017/02/10 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
jquery 动态遍历select 赋值的实例
2018/09/12 jQuery
详解vuex之store拆分即多模块状态管理(modules)篇
2018/11/13 Javascript
vue中created和mounted的区别浅析
2019/08/13 Javascript
js瀑布流布局的实现
2020/06/28 Javascript
在vue中封装的弹窗组件使用队列模式实现方法
2020/07/23 Javascript
详细介绍Python函数中的默认参数
2015/03/30 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
关于Python 3中print函数的换行详解
2017/08/08 Python
Python装饰器简单用法实例小结
2018/12/03 Python
基于OpenCV python3实现证件照换背景的方法
2019/03/22 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
美国高街时尚品牌:OASAP
2016/07/24 全球购物
瀑布模型都有哪些优缺点
2014/06/23 面试题
怎样写演讲稿
2014/01/04 职场文书
五年级科学教学反思
2014/02/05 职场文书
安全责任书怎么写
2014/07/28 职场文书
单位婚育证明范本
2014/11/21 职场文书
授权委托书
2015/01/28 职场文书
2015年党员创先争优公开承诺书
2015/04/27 职场文书
GTX1660显卡搭配显示器推荐
2022/04/19 数码科技