foreach, in (Referencia de C#)

Actualización: noviembre 2007

La instrucción foreach repite un grupo de instrucciones incrustadas para cada elemento de una matriz o colección de objetos que implementa la interfaz System.Collections.IEnumerable o System.Collections.Generic.IEnumerable<T>. La instrucción foreach se utiliza para recorrer la colección en iteración y obtener la información deseada, pero no se puede utilizar para agregar o quitar elementos de la colección de origen, ya que se pueden producir efectos secundarios imprevisibles. Si necesita agregar o quitar elementos de la colección de origen, utilice un bucle for.

Las instrucciones del bucle siguen ejecutándose para cada elemento de la matriz o la colección. Cuando ya se han recorrido todos los elementos de la colección, el control se transfiere a la siguiente instrucción fuera del bloque foreach.

En cualquier punto dentro del bloque foreach, puede salir del bucle utilizando la palabra clave break o pasando directamente a la iteración siguiente del bucle mediante la palabra clave continue.

También se puede salir de un bucle foreach mediante las instrucciones goto, return o throw.

Para obtener más información acerca de la palabra clave foreach, incluidos ejemplos de código, vea los temas siguientes:

Utilizar foreach son matrices (Guía de programación de C#)

Cómo: Obtener acceso a una clase de colección mediante Foreach (Guía de programación de C#)

Ejemplo

En este ejemplo, foreach se utiliza para mostrar el contenido de una matriz de enteros.

class ForEachTest
{
    static void Main(string[] args)
    {
        int[] fibarray = new int[] { 0, 1, 2, 3, 5, 8, 13 };
        foreach (int i in fibarray)
        {
            System.Console.WriteLine(i);
        }
    }
}
/*
Output:
0
1
2
3
5
8
13
*/

Especificación del lenguaje C#

Para obtener más información, vea las secciones siguientes de Especificación del lenguaje C#.

  • 5.3.3.16 Instrucciones Foreach

  • 8.8.4 La instrucción foreach

Vea también

Conceptos

Guía de programación de C#

Referencia

Palabras clave de C#

Instrucciones de iteración (Referencia de C#)

Otros recursos

Referencia de C#