For-VS-ForEach

PowerShell中的For和ForEach-Object的速度PK 1


在上一篇文章中我们谈到某群友感觉ForEach-Object速度比For循环快,事情并非绝对。但是写起来,ForEach-Object肯定比For快,我相信大家无异议。当集合元素已知时,For比ForEach快。这和C#中的结果一致,我们随便写几行脚本来测试,测试结果如下:

For-VS-ForEach

For-VS-ForEach

而ForEach更多的使用在集合的迭代和流模式的管道中,比如你要递归处理C盘下所有的文件,如果使用For循环先得把结果保存起来吧,暂且不论结果对空间的消耗,单从时间上说,保存结果得遍历一遍,For里面的处理得遍历一遍,这一前一后,2个N就出来了。但是如果使用ForEach的化,一遍搞定。这同样的也牵扯到了管道的两种模式

×用微信扫描并分享
本文链接: https://www.pstips.net/for-vs-foreach.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

一条评论 “PowerShell中的For和ForEach-Object的速度PK