只想訪問實現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. 如何訪問對象中的元素?
- 3. 如何訪問對象內的元素
- 4. 獲取IEnumerable項的第一個元素
- 5. 如何從一個對象訪問C#中的第一值3.0
- 6. 如何訪問迭代器中的第一個元素?
- 7. 如何在Lua中訪問表的第一個元素?
- 8. 如何訪問Angular DOM對象中的某個元素
- 9. 如何訪問另一個對象內部對象上的元素?
- 10. 如何訪問每個列表的第一個元素列表
- 11. C++如何訪問元素對象
- 12. 陣列對象中的訪問元素
- 13. 訪問player.getIframe()對象中的元素?
- 14. 訪問對象中的元素
- 15. 如何獲得IEnumerable的第一個元素(非泛型)?
- 16. 如何從.net的IEnumerable <T>獲取第一個元素?
- 17. 如何選擇IEnumerable對象的前三個元素?
- 18. 在jList/listModel中訪問一個對象的元素
- 19. PHP:直接訪問一個元素中的對象
- 20. 訪問/訪問MVC中的IEnumerable對象中的特定索引
- 21. 實現IEnumerable的到我的對象
- 22. 訪問元素JavaScript對象
- 23. 訪問第一個元素JS收集
- 24. 訪問第一個元素在os.scandir
- 25. handlebars - 如何訪問子數組的第一個元素?
- 26. 如何訪問std :: list的第一個元素?
- 27. 如何訪問myabilities類的第一個元素?
- 28. 訪問對象數組中的php對象中的元素
- 29. 如何通過dom元素訪問現有地圖對象?
- 30. 如何在PHP中訪問數組中的第N個元素
我沒有找到這些方法。我的對象只實現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