用新VB.NET 枚举提高效率
【打印文章】
当你还使用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技术所能提供的计数功能,另外还有使循环复位和从起始位置开始的新加功能。
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技术所能提供的计数功能,另外还有使循环复位和从起始位置开始的新加功能。
本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )
【编程爱好者论坛】