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 相关文章推荐
用函数读出数据表内容放入二维数组
Oct 09 PHP
PHP下几种删除目录的方法总结
Aug 19 PHP
Zend Studio去除编辑器的语法警告设置方法
Oct 24 PHP
php记录代码执行时间(实现代码)
Jul 05 PHP
codeigniter自带数据库类使用方法说明
Mar 25 PHP
php实现在服务器上创建目录的方法
Mar 16 PHP
解决php的“It is not safe to rely on the system’s timezone settings”问题
Oct 08 PHP
PHP测试成功的邮件发送案例
Oct 26 PHP
PHP识别二维码的方法(php-zbarcode安装与使用)
Jul 07 PHP
浅谈PHP错误类型及屏蔽方法
May 27 PHP
YII2自动登录Cookie总是失效的解决方法
Jun 28 PHP
PHP树形结构tree类用法示例
Feb 01 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
PHP使用者状态管理功能的应用
2006/10/09 PHP
php in_array 函数使用说明与in_array需要注意的地方说明
2010/04/13 PHP
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
2018/04/20 PHP
php实现简单的守护进程创建、开启与关闭操作
2019/08/13 PHP
基于jquery的网页SELECT下拉框美化代码
2010/10/28 Javascript
javascript模拟的Ping效果代码 (Web Ping)
2011/03/13 Javascript
jquery制作搜狐快站页面效果示例分享
2014/02/21 Javascript
用js读、写、删除Cookie代码续篇
2014/12/03 Javascript
JavaScript实现弹出子窗口并传值给父窗口
2014/12/18 Javascript
浅谈JavaScript Array对象
2014/12/29 Javascript
浅谈JavaScript中指针和地址
2015/07/26 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
非常实用的12个jquery代码片段
2015/11/02 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
Javascript发送AJAX请求实例代码
2016/08/21 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
win与linux系统中python requests 安装
2016/12/04 Python
Python实现的快速排序算法详解
2017/08/01 Python
详解python中executemany和序列的使用方法
2017/08/12 Python
Python实现比较扑克牌大小程序代码示例
2017/12/06 Python
Python 编码规范(Google Python Style Guide)
2018/05/05 Python
解决Python pandas df 写入excel 出现的问题
2018/07/04 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
2019/12/23 Python
CSS3字体效果的设置方法小结
2016/06/13 HTML / CSS
美国排名第一的泳池用品直接来源:In The Swim
2019/09/23 全球购物
小学母亲节活动方案
2014/03/14 职场文书
分公司负责人任命书
2014/06/04 职场文书
三八节标语
2014/06/27 职场文书
自动化专业大学生职业生涯规划范文:爱拚才会赢
2014/09/12 职场文书
副乡长民主生活会个人对照检查材料思想汇报
2014/10/01 职场文书
电子银行业务授权委托书
2014/10/10 职场文书
在职人员跳槽求职信
2015/03/20 职场文书
2016新年问候语大全
2015/11/11 职场文书
Idea连接MySQL数据库出现中文乱码的问题
2021/04/14 MySQL
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android
Vue h函数的使用详解
2022/02/18 Vue.js