PHP中for循环与foreach的区别

yipeiwu_com6年前PHP代码库

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的时候会锁定集合中的对象.期间不能修改.

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持【宜配屋www.yipeiwu.com】!

相关文章

PHP获取星期几的常用方法小结

本文实例讲述了PHP获取星期几的常用方法。分享给大家供大家参考,具体如下: PHP星期几获取代码: date("l"); //data就可以获取英文的星期比如Sunday date(...

dedecms中常见问题修改方法总结

新手常见问题,此贴是早些时候我发的,在3.1正式版中.有些问题已得到修正,不过仍可作为修改或学习参考 请大家花点耐心看完这个吧,这些问题很多人都有碰到.何必要不停的发贴子问呢? 另外,看...

PHP设计模式之抽象工厂模式实例分析

本文实例讲述了PHP设计模式之抽象工厂模式。分享给大家供大家参考,具体如下: 前面的文章说了PHP下的简单工厂(静态工厂) 和工厂模式,现在说一下抽象工厂模式 工厂模式我们已经说过,增加...

php用户注册时常用的检验函数实例总结

本文实例总结了php用户注册时常用的检验函数。分享给大家供大家参考。具体分析如下: php用户注册时常用的一些常用检验函数总结,包括有检测提交的数据是否符合用户名格式,检测参数的值是否相...

7个超级实用的PHP代码片段

1、超级简单的页面缓存 如果你的工程项目不是基于 CMS 系统或框架,打造一个简单的缓存系统将会非常实在。下面的代码很简单,但是对小网站而言能切切实实解决问题。 复制代码 代码如下: &...