请单击以进行评分并提供反馈
MSDN
MSDN Library
.NET 开发
先前版本
 GetEnumerator 方法
全部折叠/全部展开 全部折叠
此页面仅适用于
Microsoft Visual Studio 2005/.NET Framework 2.0

同时提供下列产品的其他版本:
.NET Framework 类库
Dictionary.GetEnumerator 方法

注意:此方法在 .NET Framework 2.0 版中是新增的。

返回循环访问 Dictionary 的枚举数。

命名空间:System.Collections.Generic
程序集:mscorlib(在 mscorlib.dll 中)

Visual Basic(声明)
Public Function GetEnumerator As Enumerator
Visual Basic(用法)
Dim instance As Dictionary(Of TKey, TValue)
Dim returnValue As Enumerator

returnValue = instance.GetEnumerator
C#
public Enumerator GetEnumerator ()
C++
public:
Enumerator GetEnumerator ()
J#
public Enumerator GetEnumerator ()
JScript
public function GetEnumerator () : Enumerator

返回值

用于 DictionaryDictionary.Enumerator 结构。

对于枚举而言,每一项都是一个表示值及值的键的 KeyValuePair 结构。

C# 语言的 foreach 语句(在 C++ 中为 for each,在 Visual Basic 中为 For Each)隐藏了枚举数的复杂性。因此,建议使用 foreach,而不直接操作枚举数。

枚举数可用于读取集合中的数据,但不能用于修改基础集合。

最初,枚举数定位在集合中第一个元素前。在此位置上,Current 属性未定义。因此,在读取 Current 的值之前,必须调用 MoveNext 方法将枚举数向前定位到集合的第一个元素。

Note注意

为了实现更好的性能,当此属性返回的枚举数放置在第一个元素的前面或最后一个元素的后面,且访问 Current 属性时,该枚举数不会引发异常;Current 属性的值未定义。

在调用 MoveNext 方法之前,Current 属性将返回相同的元素。MoveNextCurrent 设置为下一个元素。

如果 MoveNext 越过集合的末尾,则枚举数将被定位到该集合中最后一个元素的后面,且 MoveNext 将返回 false。当枚举数位于此位置时,对 MoveNext 的后续调用也返回 false。如果对 MoveNext 的上一次调用返回 false,则说明未定义 Current。无法再次为集合的第一个元素设置 Current;必须改为新建枚举数实例。

只要集合保持不变,枚举数就保持有效。如果对集合进行更改(如添加、修改或删除元素),则枚举数将失效且不可恢复,而且其行为是不确定的。

枚举数没有对集合的独占访问权;因此,从头到尾对一个集合进行枚举在本质上不是一个线程安全的过程。若要确保枚举过程中的线程安全,可以在整个枚举过程中锁定集合。若要允许多个线程访问集合以进行读写操作,则必须实现自己的同步。

System.Collections.Generic 命名空间中集合的默认实现不同步。

此方法是 O(1) 操作。

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

.NET Framework

受以下版本支持:2.0

.NET Compact Framework

受以下版本支持:2.0
社区内容   什么是社区内容?
添加新内容 RSS  批注
Processing
© 2010 Microsoft Corporation 版权所有。 保留所有权利 | 商标 | 隐私权声明
Page view tracker