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

简介: 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#
C#中的异步流:使用IAsyncEnumerable<T>和await foreach实现异步数据迭代
【1月更文挑战第10天】本文介绍了C#中异步流的概念,并通过使用IAsyncEnumerable<T>接口和await foreach语句,详细阐述了如何异步地迭代数据流。异步流为处理大量数据或需要流式处理数据的场景提供了一种高效且非阻塞性的方法,使得开发者能够更优雅地处理并发和数据流问题。
|
11月前
|
安全 编译器 程序员
C# 中 foreach 循环和 for 循环深度比较
为什么建议你多数情况下使用 foreach 进行遍历循环?看完你就明白了
303 5
|
8月前
|
缓存 图形学
Unity C#for和foreach效率比较
该代码对比了三种遍历 `List&lt;int&gt;` 的方式的性能:使用缓存 `Count` 的 `for` 循环、每次访问 `list.Count` 的 `for` 循环以及 `foreach` 循环。通过 `Stopwatch` 测量每次遍历 300 万个元素所花费的时间,并输出结果。测试可在 Unity 环境中运行,按下空格键触发。结果显示,缓存 `Count` 的 `for` 循环性能最优,`foreach` 次之,而每次都访问 `list.Count` 的 `for` 循环最慢。
|
Java C#
如何避免在C#循环中使用await
如何避免在C#循环中使用await
314 9
|
开发框架 .NET 程序员
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
掌握C#语言的精髓:基础知识与实用技能详解(数据类型与变量+ 条件与循环+函数与模块+LINQ+异常+OOP)
103 0
C# 循环与条件语句详解
使用 switch 语句选择要执行的多个代码块中的一个。 示例:
157 2
C#基础语法(判断和循环)
C#基础语法(判断和循环)
136 1
|
C# 图形学
【Unity 3D】C#中while do while for foreach等循环语句的讲解(附测试代码)
【Unity 3D】C#中while do while for foreach等循环语句的讲解(附测试代码)
406 0
【C#视频】for、while、do-while三种循环
【C#视频】for、while、do-while三种循环
|
24天前
|
XML 前端开发 C#
C#编程实践:解析HTML文档并执行元素匹配
通过上述步骤,可以在C#中有效地解析HTML文档并执行元素匹配。HtmlAgilityPack提供了一个强大而灵活的工具集,可以处理各种HTML解析任务。
110 19