PHP中for循环与foreach的区别


Posted in PHP onMarch 06, 2017

for循环与foreach的区别

foreach 依赖 IEnumerable.

第一次 var a in GetList() 时调用 GetEnumerator 返回第一个对象并赋给a,

以后每次再执行 var a in GetList() 的时候调用 MoveNext.直到循环结束.

期间GetList()方法只执行一次.

+ View Code

for 循环靠下标定位.    list[3] 相当于 *(list + 3).

+ View Code

or 循环每次循环会调用 GetCount() 来比较长度. 而 foreach 不考虑长度,只调用一次GetList().

结论.

在固定长度或长度不需要计算的时候for循环效率高于foreach.

在不确定长度,或计算长度有性能损耗的时候,用foreach比较方便.

并且foreach的时候会锁定集合中的对象.期间不能修改.

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
配置PHP使之能同时支持GIF和JPEG
Oct 09 PHP
Search File Contents PHP 搜索目录文本内容的代码
Feb 21 PHP
php使用curl和正则表达式抓取网页数据示例
Apr 13 PHP
php中实现精确设置session过期时间的方法
Jul 17 PHP
6个超实用的PHP代码片段
Aug 10 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
yum命令安装php7和相关扩展
Jul 04 PHP
PHP实现根据密码长度显示安全条
Jul 04 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
Sep 30 PHP
实例介绍PHP删除数组中的重复元素
Mar 03 PHP
Laravel 实现添加多语言提示信息
Oct 25 PHP
微信公众平台开发-微信服务器IP接口实例(含源码)
Mar 05 #PHP
php实现留言板功能
Mar 05 #PHP
Linux服务器下PHPMailer发送邮件失败的问题解决
Mar 04 #PHP
php获取网站根目录物理路径的几种方法(推荐)
Mar 04 #PHP
PHP获取路径和目录的方法总结【必看篇】
Mar 04 #PHP
php redis实现对200w用户的即时推送
Mar 04 #PHP
php获取目录中所有文件名及判断文件与目录的简单方法
Mar 04 #PHP
You might like
一个没有MYSQL数据库支持的简易留言本的编写
2006/10/09 PHP
phplock(php进程锁) v1.0 beta1
2009/11/24 PHP
几个实用的PHP内置函数使用指南
2014/11/27 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
用js实现的模拟jquery的animate自定义动画(2.5K)
2010/07/20 Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
2013/12/02 Javascript
JS将光标聚焦在文本最后的实现代码
2014/03/28 Javascript
JavaScript中函数(Function)的apply与call理解
2015/07/08 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
分享jQuery网页元素拖拽插件
2020/12/01 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
JavaScript ES6中CLASS的使用详解
2016/11/22 Javascript
谈谈jQuery之Deferred源码剖析
2016/12/19 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
2017/03/30 Javascript
vue.js todolist实现代码
2017/10/29 Javascript
详解webpack打包后如何调试的方法步骤
2018/11/07 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
[02:04]2014DOTA2国际邀请赛 DK一个时代的落幕
2014/07/21 DOTA
Python 解析XML文件
2009/04/15 Python
python实现ID3决策树算法
2018/08/29 Python
python实现flappy bird游戏
2018/12/24 Python
python实现图片横向和纵向拼接
2020/03/05 Python
CSS3中border-radius属性设定圆角的使用技巧
2016/05/10 HTML / CSS
SheIn俄罗斯:时尚女装网上商店
2017/02/28 全球购物
体育老师的教学自我评价分享
2013/11/19 职场文书
红领巾心向党广播稿
2014/01/19 职场文书
经贸韩语专业大学生职业规划
2014/02/14 职场文书
《厄运打不垮的信念》教学反思
2014/04/13 职场文书
清明节网上祭英烈活动总结
2014/04/30 职场文书
教师专业自荐信
2014/05/31 职场文书
英语教师求职信
2014/06/16 职场文书
解除劳动合同协议书(样本)
2014/10/02 职场文书
2015年学校教科室工作总结
2015/07/20 职场文书
《迟到》教学反思
2016/02/24 职场文书
golang生成vcf通讯录格式文件详情
2022/03/25 Golang