Vb.net 对于每个循环迭代计数
当我们为每个使用一个时,我们能跟踪循环中的迭代吗?我喜欢使用For-Each循环在我的对象中循环,但是我似乎找不到一种方法来保存我在循环中的位置的索引。当然,除非我自己创建…您可以这样做:Vb.net 对于每个循环迭代计数,vb.net,foreach,iteration,Vb.net,Foreach,Iteration,当我们为每个使用一个时,我们能跟踪循环中的迭代吗?我喜欢使用For-Each循环在我的对象中循环,但是我似乎找不到一种方法来保存我在循环中的位置的索引。当然,除非我自己创建…您可以这样做: Dim index as integer = 0 For Each item in list 'do stuff index += 1 Next 当然,根据您迭代的集合,无法保证项与列表相同。项(索引),但这是否重要取决于您正在做什么 For index as integer
Dim index as integer = 0
For Each item in list
'do stuff
index += 1
Next
当然,根据您迭代的集合,无法保证项
与列表相同。项(索引)
,但这是否重要取决于您正在做什么
For index as integer = 0 to list.count - 1
Dim item = list.item(index)
'do stuff
Next
如果您需要
项
与列表相同,则这是另一种选择。项(索引)
如果您想要索引,请对每个使用循环,而不是。这就是它存在的原因
For i As Int32 = 0 To objects.Count - 1
Dim obj = objects(i)
Next
当然,没有什么可以阻止您创建自己的计数器:
Dim counter As Int32 = 0
For Each obj In objects
counter += 1
Next
或者您可以使用Linq:
Dim query = objects.Select(Function(obj, index) "Index is:" & index)
目前还没有内置的解决方案。当然,你知道如何使用计数器,但也许你正在寻找什么(通过)啊,好吧,是的,我就是这么想的。只是想确定一下!谢谢