在.NET中,“ for”或“ foreach”哪个循环运行得更快?
在C#/ VB.NET / .NET中,哪个循环运行得更快,for
或者foreach
?
自从我读了一个for
循环工程快于foreach
环路很久以前我以为这对所有集合,泛型集合,所有阵列,等真正站在
我搜寻了Google并发现了几篇文章,但其中大多数没有定论(阅读文章评论)且开放式。
理想的情况是列出每个方案,并为它们提供最佳解决方案。
例如(仅作为示例):
- 用于迭代1000个以上的字符串数组-
for
优于foreach
- 遍历
IList
(非通用)字符串-foreach
比for
在网上找到了一些相同的参考资料:
- Emmanuel Schanzer撰写的原始宏大的旧文章
- CodeProject FOREACH与。对于
- 博客-
foreach
是否接受foreach
,这是一个问题 - ASP.NET论坛-NET 1.1 C#
for
与foreach
[编辑]
除了可读性之外,我对事实和数据真的很感兴趣。在某些应用程序中,压缩性能优化的最后一步很重要。
回答:
Patrick
Smacchia上个月在博客上发表了以下结论:
- List上的for循环比List上的foreach循环便宜2倍多。
- 在数组上循环比在List上循环便宜大约2倍。
- 结果,使用for循环在数组上循环比使用foreach循环在List上便宜5倍(我相信这是我们所有人所做的)。
以上是 在.NET中,“ for”或“ foreach”哪个循环运行得更快? 的全部内容, 来源链接: utcz.com/qa/407290.html