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 相关文章推荐
PHPMyAdmin 快速配置方法
May 11 PHP
PHP中替换换行符的几种方法小结
Oct 15 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 PHP
php设计模式之单例模式使用示例
Jan 20 PHP
php命令行使用方法和命令行参数说明
Apr 08 PHP
DOM基础及php读取xml内容操作的方法
Jan 23 PHP
PHP中的数组处理函数实例总结
Jan 09 PHP
Zend Framework教程之模型Model基本规则和使用方法
Mar 04 PHP
Laravel使用Caching缓存数据减轻数据库查询压力的方法
Mar 15 PHP
浅析Yii2 gridview实现批量删除教程
Apr 22 PHP
PHP 微信扫码支付源代码(推荐)
Nov 03 PHP
详解Yii2 之 生成 URL 的方法
Jun 16 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
虚拟主机中对PHP的特殊设置
2006/10/09 PHP
php 使用post,get的一种简洁方式
2010/04/25 PHP
PHP中使用cURL实现Get和Post请求的方法
2013/03/13 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
深入讲解PHP Session及如何保持其不过期的方法
2015/08/18 PHP
javascript 框架小结 个人工作经验
2009/06/13 Javascript
javascript针对DOM的应用实例(一)
2012/04/15 Javascript
jQuery插件实现屏蔽单个元素使用户无法点击
2013/04/12 Javascript
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
jQuery简单实现禁用右键菜单
2015/03/10 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
详解JavaScript中的自定义事件编写
2016/05/10 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
2016/11/29 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
javascript数组去重方法分析
2016/12/15 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
vue+iview+less 实现换肤功能
2018/08/17 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
JavaScript检测浏览器是否支持CSS变量代码实例
2020/04/03 Javascript
vue样式穿透 ::v-deep的具体使用
2020/06/04 Javascript
浅谈vue中$bus的使用和涉及到的问题
2020/07/28 Javascript
python实现图片变亮或者变暗的方法
2015/06/01 Python
关于Django外键赋值问题详解
2017/08/13 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
Python Matplotlib实现三维数据的散点图绘制
2019/03/19 Python
python实现坦克大战
2020/04/24 Python
python实现密度聚类(模板代码+sklearn代码)
2020/04/27 Python
计算机应用与科学个人的自我评价
2013/11/15 职场文书
事业单位请假制度
2014/01/13 职场文书
十佳美德少年事迹材料
2014/02/05 职场文书
党员干部公开承诺书
2014/03/26 职场文书
初中学生评语大全
2014/04/24 职场文书
低碳环保口号
2014/06/12 职场文书
一份文言文检讨书
2014/09/13 职场文书
公司行政助理岗位职责
2015/04/11 职场文书