La Instrucción Foreach

3
La instrucción foreach La instrucción foreach repite un grupo de instrucciones incrustadas para cada elemento de una matriz o colección de objetos que implementa la interfazSystem.Collections.IEnumerable o System.Collections.Generic.IEnum erable<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 con 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 El código siguiente se muestran tres ejemplos: un bucle típico de foreach que muestra el contenido de una matriz de enteros un bucle de para que hace lo mismo un bucle de foreach que mantiene un recuento del número de elementos de la matriz C# class ForEachTest { static void Main(string[] args) { int[] fibarray = new int[] { 0, 1, 1, 2, 3, 5, 8, 13 }; foreach (int element in fibarray) { System.Console.WriteLine(element); }

Transcript of La Instrucción Foreach

Page 1: La Instrucción Foreach

La instrucción   foreach

La instrucción foreach repite un grupo de instrucciones incrustadas para cada elemento de una matriz o colección de objetos que implementa la interfazSystem.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 con 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

El código siguiente se muestran tres ejemplos: un bucle típico de foreach que muestra el contenido de una matriz de enteros un bucle de para que hace lo mismo un bucle de foreach que mantiene un recuento del número de elementos de la

matrizC#

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

// Compare the previous loop to a similar for loop. for (int i = 0; i < fibarray.Length; i++) {

Page 2: La Instrucción Foreach

System.Console.WriteLine(fibarray[i]); } System.Console.WriteLine();

// You can maintain a count of the elements in the collection. int count = 0; foreach (int element in fibarray) { count += 1; System.Console.WriteLine("Element #{0}: {1}", count, element); } System.Console.WriteLine("Number of elements in the array: {0}", count); } // Output: // 0 // 1 // 1 // 2 // 3 // 5 // 8 // 13

// 0 // 1 // 1 // 2 // 3 // 5 // 8 // 13

// Element #1: 0 // Element #2: 1 // Element #3: 1 // Element #4: 2 // Element #5: 3 // Element #6: 5 // Element #7: 8 // Element #8: 13 // Number of elements in the array: 8}