C#中'enumerator'的定义

Nir*_*bey 11 c#

枚举器在C#中的含义是什么?

Jus*_*ner 8

枚举器可帮助您枚举(迭代)项目集合.

您可以通过简单地查看IEnumerator接口成员来推断出目的.更具体地说,枚举器确切地知道您在集合中的位置(当前项)以及下一项的位置(MoveNext方法).

查看Iterator上的Wikipedia文章:

迭代器 - 维基百科


Hei*_*nzi 8

“Enumerator”是 .NET Framework 的迭代器名称。关于迭代器的维基百科页面包含对该主题的一个很好的介绍:

有关 .NET 实现的特定信息,该IEnumerator界面的 MSDN 页面包含更多详细信息:

通常,迭代器允许您遍历集合。在 C# 中,迭代器最常通过以下语句隐式使用:foreach

foreach (myType o in myCollection)
{
    // do something with o
}
Run Code Online (Sandbox Code Playgroud)

这等效于迭代器的以下显式用法:

IEnumerator<myType> iter = myCollection.GetEnumerator();
while (iter.MoveNext())
{
    var o = iter.Current;
    // do something with o
}
Run Code Online (Sandbox Code Playgroud)