获取 C# 中 foreach 循环当前迭代的索引

Minahil Noor 2023年10月12日
  1. C# 使用 Select() 方法获取 foreach 循环当前迭代的 index
  2. C# 使用索引变量方法获取 foreach 循环当前迭代的 index
获取 C# 中 foreach 循环当前迭代的索引

在 C# 中,我们主要有两个循环,for 循环和 foreach 循环。foreach 循环被认为是最好的,因为它适用于所有类型的操作。即使对于那些我们不需要索引 index 值的对象。

在某些情况下,我们需要使用 foreach 循环,但是我们还必须获取 index 索引值。为了解决这个问题,在 C# 中,我们有不同的方法来获取 foreach 循环当前迭代的 index,例如,Select() 和索引变量方法。

C# 使用 Select() 方法获取 foreach 循环当前迭代的 index

Select() 方法是 LINQ 方法。LINQ 是 C# 的一部分,用于访问不同的数据库和数据源。Select() 方法选择 foreach 循环迭代的值和索引 index

使用此方法的正确语法如下:

Select((Value, Index) => new { Value, Index });

示例代码:

using System;
using System.Linq;
using System.Collections.Generic;

public class IndexOfIteration {
  public static void Main() {
    // Creating integer List
    List<int> Numbers = new List<int>() { 1, 2, 3, 4, 8, 10 };
    // Visiting each value of List using foreach loop
    foreach (var New in Numbers.Select((value, index) => new { value, index })) {
      Console.WriteLine("The Index of Iteration is: {0}", New.index);
    }
  }
}

输出:

The Index of Iteration is: 0
The Index of Iteration is: 1
The Index of Iteration is: 2
The Index of Iteration is: 3
The Index of Iteration is: 4
The Index of Iteration is: 5

C# 使用索引变量方法获取 foreach 循环当前迭代的 index

这是查找 foreach 循环迭代的索引 index 的传统且最简单的方法。在此方法中,我们使用变量并将其初始化为零,然后在每次迭代中增加该值。

示例代码:

using System;
using System.Collections.Generic;

public class IndexOfIteration {
  public static void Main() {
    // Creating an integer List
    List<int> Numbers = new List<int>() { 1, 2, 3, 4, 8, 10 };

    int index = 0;
    // Visiting each value of List using foreach loop
    foreach (var Number in Numbers) {
      Console.WriteLine("The Index of Iteration is {0}", index);
      index++;
    }
  }
}

输出:

The Index of Iteration is: 0
The Index of Iteration is: 1
The Index of Iteration is: 2
The Index of Iteration is: 3
The Index of Iteration is: 4
The Index of Iteration is: 5

相关文章 - Csharp Loop