Find和FirstOrDefault()有什么区别?
From: http://www.cnblogs.com/Benjamin/p/3261538.html
Find方法和FirstOrDefault方法效果相同,都是返回满足条件的第一个元素,如果没有该元素,则返回null。
那么这两个扩展方法有什么不同?
1)Find方法是.netFramework2.0的,而FirstOrDefault是3.5的。
2)Find方法只能在List<T>上使用,而后者能更广泛应用在IEnemerable<T>上。
3)依据http://stackoverflow.com/questions/14032709/performance-of-find-vs-firstordefault一文,
Find最终是建立在Array的查找之上,而在IEnemerable上的FirstOrDefault是使用foreach查找的。因此,Find速度会比FirstOrDefault快很多,据测试可能会快一倍以上。
结论:在List<T>上使用Find较速度较快,而其他IEnemrable<T>类型只能使用FirstOrDefault。
Find和FirstOrDefault()有什么区别?相关推荐
- 你必须知道的EF知识和经验
推荐MiniProfiler插件 工欲善其事,必先利其器. 我们使用EF和在很大程度提高了开发速度,不过随之带来的是很多性能低下的写法和生成不太高效的sql. 虽然我们可以使用SQL Server P ...
- 【推荐】你必须知道的EF知识和经验
阅读目录 推荐MiniProfiler插件 数据准备 foreach循环的陷进 AutoMapper工具 联表查询统计 性能提升之AsNonUnicode 性能提升之AsNoTracking 多字段组 ...
- EF性能优化-有人说EF性能低,我想说:EF确实不如ADO.NET
我们使用EF和在很大程度提高了开发速度,不过随之带来的是很多性能低下的写法和生成不太高效的sql. 虽然我们可以使用SQL Server Profiler来监控执行的sql,不过个人觉得实属麻烦,每次 ...
- 上海某软件公司电话面试分享
前段时间在猎聘网上面投了几家公司的简历,结果没过多久就有一家公司叫我准备电话面试了,其中一家就是XX软件公司的面试了.今天下午从3点讲到4点.说句实话,今天长沙这边是下雨天,有点冷,为了找一个方便的地 ...
- First、FirstOrDefault、Single、SingleOrDefault 的区别
Enumerable.First 方法 返回序列中的第一个元素. Enumerable.FirstOrDefault 方法 返回序列中的第一个元素:如果序列中不包含任何元素,则返回默认值. Enume ...
- C# Linq First 和 FirstOrDefault的区别
FirstOrDefault 返回的值如果不存在则为null: First 如果查询的数据不存在, 则抛System.InvalidOperationException异常
- 关于EF中ApplyCurrentValues和ApplyOriginalValues区别
关于EF中ApplyCurrentValues和ApplyOriginalValues区别:两者都是编辑数据时使用. // // 摘要: // 将 System ...
- NET问答: Find() 和 Where().FirstOrDefault() 该如何选择 ?
咨询区 KingOfHypocrites: 我经常看到别人用 Where.FirstOrDefault() 获取某一个匹配集合的第一个元素,我在想为什么他们不使用 Find() 呢 ? 是不是前者更高 ...
- 何时使用.First以及何时将.FirstOrDefault与LINQ结合使用?
我到处搜索,还没有真正找到关于何时使用.First以及何时将.FirstOrDefault与LINQ结合使用的明确答案. 您什么时候要使用.First ? 仅当您希望在没有返回结果的情况下捕获异常时? ...
最新文章
- 《树莓派开发实战(第2版)》——1.15 使用蓝牙设备
- dnsmasq详解手册
- 《你说对就队》第四次作业:项目需求调研与分析
- 洛谷 P1955 [NOI2015]程序自动分析(沙雕题)
- 通过C#发送自定义的html格式邮件
- 牛客网——数字求和(水题
- python中for语句的使用_python中for in的用法
- CAN笔记(12) 同步
- 学 shell (1/5)
- 查询group_by 与 order by
- 多用户商城系统三级分销的设计和实现
- 如何同时将多张图片进行批量无损压缩、调整尺寸及调整大小
- Java面试题总结 - Java多线程篇(附答案)
- 在线客服服务干货:如何与客户进行有效沟通?
- springbootvue简单的景点信息管理系统
- 效果图网站、外包平台接单平台有哪些?
- Axure制作微信APP原型(三):消息+个人模块----聊天、浮窗、登录设备、个人主页、更多信息
- 变形金刚2幕后制作解密
- 人工智能下一个热点探讨,为什么要提出互联网大脑模型
- 【lssvm预测模型】基于蝙蝠算法改进的最小二乘支持向量机lssvm预测