C#中枚舉器的含義是什麼?'enumerator'在C#中的定義
10
A
回答
8
枚舉器可以幫助您枚舉(遍歷)一系列項目。
您可以通過簡單地查看members of the IEnumerator Interface來推斷目的。更具體地說,Enumerator確切知道您在集合中的位置(當前項目)以及下一個項目的位置(MoveNext方法)。
退房的迭代器維基百科的文章:
1
您可以使用一個枚舉遍歷項目的集合。
做這種事情的一個好方法是C#使用foreach
循環。
例:
IList<string> actors = new List<string>();
actors.Add("Chuck Norris");
actors.Add("Denzel Washington");
actors.Add("Sylvester Stallone");
// iterate over the list using foreach
foreach (string actor in actors)
{
//...
}
4
「枚舉」 是.NET框架爲迭代名。在迭代的維基百科頁面包含一個很好的介紹,以該主題:
有關針對.NET實現信息的IEnumerator
接口的MSDN頁面包含了更多的細節:
通常,迭代器允許您循環訪問集合。在C#,迭代通過foreach
statement使用最常用含蓄:
foreach (myType o in myCollection)
{
// do something with o
}
這相當於迭代器的下面明確的用法:
IEnumerator<myType> iter = myCollection.GetEnumerator();
while (iter.MoveNext())
{
var o = iter.Current;
// do something with o
}
1
IEnumerable和IEnumarable有一個稱爲的GetEnumerator(方法)它返回一個枚舉器對象
枚舉器公開GetNext()方法,這是非常明顯的。
Enumerators是什麼啓用foreach循環
相關問題
- 1. Enumerator#feed的神奇
- 2. Ruby Enumerator類
- 3. triangle_numbers enumerator yielder產量
- 4. 如何修復#<Enumerator:「錯誤的」未定義的方法長度「?
- 5. 在Objective-C中使用C的定義
- 6. 在C#中使用迭代器創建Enumerable或Enumerator之間的區別
- 7. 列表<T>.Enumerator
- 8. 定義在C++
- 9. 在c中自定義ToolStripMenuItems#
- 10. C#在LINQ中定義LET
- 11. 在c#中自定義MDI
- 12. 在C++中定義ref類
- 13. 在c#中自定義GridView#
- 14. 在C++中定義線程
- 15. 以下定義在C中
- 16. 如何在C#中定義變量定義中的接口?
- 17. getlines在C++中的iostream中未定義
- 18. 在C#中定義extern「C」功能
- 19. 在C#中定義C++類型
- 20. 在C++中聲明C ==定義?
- 21. 在C/C++中定義全局標籤
- 22. 在Enumerator中使用的這種設計模式是什麼?
- 23. 在宏中定義函數(在C中)
- 24. 定義給在C++
- 25. Cgicc.h中的C++類定義
- 26. C++中類的定義
- 27. C++中gslice的定義
- 28. C中的多個定義
- 29. 複雜的定義在C
- 30. 在c中的定義/實現問題#