Contenido del Curso
Conceptos básicos de C#
Conceptos básicos de C#
Recorriendo Arrays
Es muy útil poder recorrer rápidamente todos los elementos de un array y realizar alguna operación sobre ellos o extraer sus valores.
Hay varias maneras de hacerlo, sin embargo, la más común es usar los bucles for
y foreach
.
En el caso de usar el bucle for
, podemos usar la variable i
del bucle para indexar:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] numbers = { 5, 10, 15, 20, 25 }; for(int i = 0; i < 5; i++) { Console.WriteLine(numbers[i]); } } } }
En el código anterior escribimos la condición i < 5
donde elegimos 5
como el límite. En lugar de contar manualmente el número de elementos, también podemos usar el atributo Length
de los arrays para acceder a la longitud (tamaño) de un array:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] myArray = new int[10]; Console.WriteLine(myArray.Length); // Output: 10 } } }
Usando el atributo de longitud, el bucle se verá algo así:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] numbers = { 5, 10, 15, 20, 25 }; for(int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); } } } }
También podemos imprimir los números en orden inverso modificando el bucle para que se ejecute en la dirección opuesta:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] numbers = { 5, 10, 15, 20, 25 }; for (int i = numbers.Length - 1; i >= 0; i--) { Console.WriteLine(numbers[i]); } } } }
Iniciamos i
con el valor numbers.Length - 1
, porque el índice del último elemento de un arreglo es 1
menos que el tamaño de ese arreglo, así que en este caso la variable del bucle comenzará desde el valor 9
. La condición del bucle i >= 0
asegura que el bucle continúe hasta que i
llegue a 0
. Decrementamos el valor de i
en cada iteración.
Otro método ligeramente más fácil de recorrer arreglos es usando el bucle foreach
. La sintaxis de un bucle foreach es la siguiente:
main
foreach (datatype variableName in arrayName) { // code block to be executed }
Por-ejemplo:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] numbers = { 5, 10, 15, 20, 25 }; foreach(int n in numbers) { Console.WriteLine($"Number: {n}"); }; } } }
El bucle foreach
es más simple que el bucle for
, sin embargo, la diferencia es que no podemos modificar los elementos originales del arreglo en un bucle foreach
. Si intentamos asignar un nuevo valor a n
en el código anterior, el compilador mostrará un error. Sin embargo, es posible en el bucle for, ya que conocemos los índices de los elementos y podemos modificar el arreglo:
main
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[] numbers = { 5, 10, 15, 20, 25 }; for(int i = 0; i < numbers.Length; i++) { numbers[i] *= 2; }; for(int i = 0; i < numbers.Length; i++) { Console.WriteLine(numbers[i]); } } } }
¡Gracias por tus comentarios!