¿Cómo obtener el índice de la iteración actual de un bucle foreach en C#?
¡Hola a todos! Estoy empezando a aprender C# y me encontré con este problema: necesito no solo recorrer los elementos de una colección, sino también conocer el número de orden de cada elemento durante la iteración. Por ejemplo, tengo una lista de strings:
```csharp
List fruits = new List { "manzana", "banana", "naranja", "pera" };
```
Quiero imprimir cada fruta con su índice, así:
```
0: manzana
1: banana
2: naranja
3: pera
```
Obviamente, el bucle `for` es perfecto para esta tarea:
```csharp
for (int i = 0; i < fruits.Count; i++)
{
Console.WriteLine($"{i}: {fruits[i]}");
}
```
Pero me interesa específicamente `foreach`. He oído que `foreach` es más simple y seguro para leer, pero no tiene una variable contador incorporada. Intenté hacer esto:
```csharp
int index = 0;
foreach (var fruit in fruits)
{
Console.WriteLine($"{index}: {fruit}");
index++;
}
```
Esto funciona, pero parece un parche. ¿Quizás hay una forma más elegante? Por ejemplo, algún...
No answers yet.
Inicia sesión para dejar una respuesta