如何获得Foreach循环当前迭代的索引?

如何获得Foreach循环当前迭代的索引?

在C#中是否有一些我从未遇到过的罕见的语言构造(就像我最近学到的少数语言构造,有些是关于堆栈溢出的),以获得一个表示Foreach循环当前迭代的值?

例如,我目前根据具体情况做了这样的事情:

int i = 0;foreach (Object o in collection){
    // ...
    i++;}


波斯汪
浏览 916回答 3
3回答

缥缈止盈

这个foreach用于迭代实现IEnumerable..它通过调用GetEnumerator在集合中,该集合将返回Enumerator.此枚举数具有一个方法和一个属性:MoveNext()电流Current返回枚举数当前所在的对象,MoveNext更新Current下一个目标。索引的概念与枚举的概念不同,不能执行。因此,大多数集合都可以使用索引器和for循环构造来遍历。与使用局部变量跟踪索引相比,我更喜欢在这种情况下使用for循环。
打开App,查看更多内容
随时随地看视频慕课网APP