日期:2012-10-24  浏览次数:20536 次

当你还使用For…Each循环或者是For 1 To Count 循环处理集合的时候,VB .NET中加入了一种新的技术,IEnumerator界面。

IEnumerator界面支持两种方法和一种特性。MoveNext方法能在集合中一次移动一条记录。Reset方法能使枚举器复位到集合的起始。Current特性能从集合返回当前记录。

下面的程序显示了这三种计算集合的可能的办法。

Dim testCollection As New Collection()
Dim collectionItem As String
Dim loopCounter As Integer
Dim enumCollection As Ienumerator

With testCollection
.Add("1")
.Add("2")
.Add("3")
End With

For Each collectionItem In testCollection
Console.Out.WriteLine(collectionItem)
Next

For loopCounter = 1 To testCollection.Count
Console.Out.WriteLine(testCollection.Item(loopCounter))
Next

enumCollection = testCollection.GetEnumerator()

Do While enumCollection.MoveNext
Console.Out.WriteLine(enumCollection.Current)
Loop

IEnumerator带给你For…Each技术所能提供的计数功能,另外还有使循环复位和从起始位置开始的新加功能。