期权记-ETF期权开户导航 期权记是专业的50ETF300ETF期权开户投资交易导航

for循环和foreach的区别

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

for(int i = 0; i < GetCount(); i++)  {    ....  }     =     int i = 0;     while(i < GetCount())  {    ...  }

2、

foreach 依赖 IEnumerable.

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

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

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

foreach   (var a in GetList())  {      ...  }     =     var a;  IEnumerator  e  =  GetList().GetEnumerator();  while (e.MoveNext)  {      a = e.Current;  }

总结:for 循环每次循环会调用 GetCount() 来比较长度,而 foreach 不考虑长度,只调用一次GetList()。

本站声明:网站内容来源于网络,如有侵权,请联系我们https://www.qiquanji.com,我们将及时处理。

微信扫码关注

更新实时通知

作者:期权小韭菜 分类:网页教程 浏览:
请先 登录 再评论,若不是会员请先 注册