探究C#循环的执行效率的问题---for、.ForEach()、foreach、While

结论: 

        十万以内:for循环执行速度最快。

        百万:foreach和.ForEach() 略快于 for,但差距不算很大。

        千万、一亿:for 略快于 foreach和.ForEach()。

        十亿:for 明显快于 foreach和.ForEach()。

  

 循环测试代码

int sum = 1000000000;
Console.WriteLine($"循环数量        {sum}");
List<int> ints = new List<int>();
Stopwatch sw = Stopwatch.StartNew();
sw.Start(); 
for (int i = 0; i < sum; i++)
{
    ints.Add(i);
}
sw.Stop();
Console.WriteLine($"for     { sw.Elapsed.ToString()}");

List<int> ints1 = new List<int>();
Stopwatch sw1 = Stopwatch.StartNew();
sw1.Start();
ints.ForEach(i => ints1.Add(i));
sw1.Stop();
Console.WriteLine($".ForEach        {sw1.Elapsed.ToString()}");


List<int> ints2 = new List<int>();
Stopwatch sw2 = Stopwatch.StartNew();
sw2.Start();

foreach (var item in in
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值