C# for和foreach两种循环的效率问题

Posted 小马的棺材板

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# for和foreach两种循环的效率问题相关的知识,希望对你有一定的参考价值。

所谓的效率就是哪个运行的比较快,
用来循环数组类的一般使用for或者foreath
下面通过代码测试他们的效率:


创建一个int类型数组使用3种循环查看效率:

for

int[] a = new int[1000000000];
 Stopwatch b = new Stopwatch();
  b.Start();
for (int i = 0; i <= a.Length; i++) 
 {                    
 }
b.Stop();                  
Console.WriteLine(b.Elapsed);

在这里插入图片描述

foreach:

int[] a = new int[1000000000];
 Stopwatch b = new Stopwatch();
b.Start();
foreach (int i in a)
{ 
 }
 b.Stop();                  
Console.WriteLine(b.Elapsed);

在这里插入图片描述

while:

基本不会使用这种方法…

int[] a = new int[1000000000];
Stopwatch b = new Stopwatch();
  b.Start();
 int i =0;
 while (i <= a.Length)
  {
    i++;
   }
b.Stop();                  
 Console.WriteLine(b.Elapsed);

在这里插入图片描述
总结:
还测试了其他的…
测试了五六次for和while的速度确实比foreath快一点,
不过处理小数据用哪种都差不多速度都不会太远,

纯手打,点个赞呗~

以上是关于C# for和foreach两种循环的效率问题的主要内容,如果未能解决你的问题,请参考以下文章

c# for和foreach哪个执行效率

foreach用法

C#开发中请多使用foreach

for循环与forEach循环效率对比问题

在C#中for循环和foreach循环有啥区别?

c# for循环效率问题,遍历list<string>集合;