如果我需要一个迭代器变量,我会使用一个for循环(每个IEnumerable都应该有一个.Count属性).
代替
For Each element as MyType in MyList
....
Next
Run Code Online (Sandbox Code Playgroud)
写
For i as integer = 0 to MyList.Count - 1
element = MyList(i)
....
Next
Run Code Online (Sandbox Code Playgroud)
这将是相同的结果.你有i一个迭代器并element保存当前元素.
如果您使用的是Visual Studio 2009(或VB.Net 9.0),则可以使用"选择"覆盖来获取值的计数.
For Each cur in col.Select(Function(x,i) New With { .Index = i, .Value = x })
...
Next
Run Code Online (Sandbox Code Playgroud)