美文网首页程序员
c# list.FindAll和for的性能对比

c# list.FindAll和for的性能对比

作者: 阮玉峰 | 来源:发表于2017-10-22 09:39 被阅读0次

List<T>.FindAll的效率竟然比for循环还差

    以上是baidu出来的一篇文章,让我惊诧不已,因为在AI模块我已经使用了很多FindAll。但是,上文的结论是真的吗?我在上文代码基础上增加了多次测试的代码:

得到了如下结果:

.Net2.0, visual studio 执行1,1,10, 100,1000次:

.Net4.1, visual studio 执行1,1,10, 100,1000次:

Unity 先预处理再执行1000次:

Unity 先预处理再执行 10 次

Unity 先预处理再执行 1 次

    我的测试程序表明:无论windows平台还是unity平台,List.FindAll的效率并非如前文所说“比for循环差五六十倍”。事实是,因为要初始化算法现场,进程第一次调用List.FindAll的耗时比for循环长五六十倍。但是,第一次之后的调用List.FindAll和for循环的性能差异是非常小的,可以忽略。

相关文章

  • c# list.FindAll和for的性能对比

    List.FindAll的效率竟然比for循环还差 以上是baidu出来的一篇文章,让我惊诧不已,因为在...

  • C# 中Switch、If 性能对比

    switch...case:会生成一份大小(表项数)为最大case常量+1的跳表,程序首先判断switch变量是否...

  • C#单例模式的实现和性能对比

    简介 单例指的是只能存在一个实例的类(在C#中,更准确的说法是在每个AppDomain之中只能存在一个实例的类,它...

  • nginx-rtmp

    SRS和nginx-rtmp性能对比

  • C语言-说明

    本文集的内容是建立在和C#语言对比基础写的。为懂C#语言的童鞋学习C语言讲解。如有不变请谅解!

  • 金融模型的监控

    主要对比模型当前性能Current Performance和开发性能Dev Performance的差异 一、前端...

  • 4.1常用日期操作

    程序员经常把java和C#做对比,说java语法多么多么的不简练,C#多么多么的简洁,其中经常说的就是java的日...

  • Flutter的优、缺点

    1、Flutter的优点 性能强大,流畅Flutter对比weex和react native相比,性能的强大是有目...

  • 2021-07-07【c#】反射性能:比直接创建差30倍

    C# 直接创建多个类和使用反射创建类的性能 - lindexi - 博客园 (cnblogs.com)[https...

  • objectbox使用及对比

    一、数据库对比:1.特性对比 2.性能对比: 性能对比使用了官方出的对比demo: 二、各数据库使用了解1.obj...

网友评论

    本文标题:c# list.FindAll和for的性能对比

    本文链接:https://www.haomeiwen.com/subject/awkguxtx.html