只想访问实现IEnumerable的对象中的第一个元素,该怎么做?如何访问实现IEnumerable的对象中的第一个元素
1
A
回答
7
不幸的是你不能使用的东西,它实现仅IEnumerable
的LINQ扩展方法。但是,您可以使用.Cast<object>()
将其变为IEnumerable<object>
,然后使用以下方法。下面假设collection
是IEnumerable<T>
类型的一些T
:
要访问的第一个元素,并抛出一个异常,如果是没有的:
collection.First()
要访问的第一个元素,并得到,如果该类型缺省值也没有了:
collection.FirstOrDefault()
类型的默认值是null
引用类型(声明为class
类型,例如string
,Stream
,Bitmap
等)和值类型(声明为struct
或enum
的类型,例如int
,bool
,DateTime
等)的“零值”。
要仅找出是否有一个第一元件在所有:
collection.Any()
所有这三个可以采取一个lambda表达式作为条件,例如.First(x => x.Name == "x")
,相当于.Where(x => x.Name == "x").First()
。
4
使用FirstOrDefault方法
using System.Linq;
int[] numbers = { };
int first = numbers.FirstOrDefault();
相关问题
- 1. 如何访问列表中对的第一个元素
- 2. 获取IEnumerable项的第一个元素
- 3. 如何访问对象内的元素
- 4. 如何从一个对象访问C#中的第一值3.0
- 5. 如何访问Angular DOM对象中的某个元素
- 6. 如何访问每个列表的第一个元素列表
- 7. 如何从.net的IEnumerable <T>获取第一个元素?
- 8. 如何选择IEnumerable对象的前三个元素?
- 9. PHP:直接访问一个元素中的对象
- 10. 访问元素JavaScript对象
- 11. 如何访问std :: list的第一个元素?
- 12. 访问对象数组中的php对象中的元素
- 13. 如何访问在Java中实现Runnable的对象的方法?
- 14. 如何从jQuery对象中仅提取第一个元素?
- 15. 如何从第二个对象访问一个对象的方法
- 16. 如何访问C#中IEnumerable对象的索引?
- 17. Java:无法访问对象的元素
- 18. 如何使用等效对象访问集合中的元素?
- 19. 如何在Java中访问数组对象的特定元素?
- 20. 如何访问加载在对象标签中的HTML元素?
- 21. 如何使用javascript访问返回对象中的元素?
- 22. 访问一个无对象的元素闪亮
- 23. 在PHP中访问JSON对象元素
- 24. 如何访问DataRow中单元格后面的“真实”对象
- 25. 如何选择枚举对象中的第i个元素
- 26. 抓住的第一个元素中的对象(PHP)
- 27. 如何删除第一个元素并使第二个元素成为java.util.NavigableSet中的第一个元素?
- 28. 在lxml.html中访问输出的第一个元素
- 29. 如何访问由JSON.parse创建的此JSON对象的元素?
- 30. 如何实现IEnumerable?
我没有找到这些方法。我的对象只实现IEnumable接口。 – user496949 2010-12-16 01:28:41
顺便说一句,我正在使用.NET Framework 3.5 – user496949 2010-12-16 01:29:00
请问你能为第一句话显示任何参考吗? ('不幸的是,你不能在仅实现IEnumerable的东西上使用LINQ扩展方法)。我从MSDN页面复制了我的示例,它只是使用int数组...谢谢! – Lorenzo 2010-12-16 01:36:43