1. Arreglos
En programación un array (muchos lo llaman vector) es una zona de
almacenamiento que contiene elementos de un mismo tipo (enteros, boléanos,
fechas). En principio todos las arrays son de una dimensión, pero se pueden
simular facilmente arrays multidimensionales. Los más fáciles de “ver” o imaginar
son los de dos (un tablero de ajedrez) y tres dimensiones (el cubo de Rugby).
Para que sirven los arrays?
Estas estructuras de datos son adecuadas para situaciones en las que el acceso a
los datos se realice de forma aleatoria e impredecible, por ejemplo, cuando
tenemos un conjunto de números desordenados o una lista de nombres.
Por el contrario, si los elementos pueden estar ordenados y se va a utilizar acceso
secuencial sería más adecuado utilizar otra estructura mejor diseñada para estas
situaciones. En lenguajes fuertemente tipados como C# (aunque ya no tanto) los
arrays solo pueden tener elementos de un mismo tipo, a diferencia de PHP,
Python y otros lenguajes dinámicos. Veamos ahora como podemos trabajar con
los arrays en C#.
Declarar un Array
Para declarar un array de una dimensión, solamente debes especificar de qué tipo
serán los elementos de array, de esta forma:
<tipo> [] <nombre> = new <tipo> [<tamaño>];
Por ejemplo, si quiero crear un nuevo array de 8 números enteros:
int [] numeros = new int [8];
int es para decir que son enteros lo que voy a almacenar, numeros es el nombre
del array y new es el operador que indica al compilador que cree un nuevo array
con una capacidad de 8 elementos.
Si quieres establecer los 8 números enteros desde un principio, deberás incluir
entre llaves, los elementos separados por coma como en el ejemplo:
int [] a = {6,1,5,6,4,8,6,9,7,4,14,26,14,12,10};
Para declarar un array n-dimensional solo hay que tener en cuenta que a medida
que le agreguemos una coma (,) a los corchetes, se crea una nueva dimensión,
por lo que si hacemos [,] estamos creando un array bidimensional, si agregamos
otra coma ([,,]) sería tridimensional. Veamos un ejemplo:
2. bool [,] tablero = new bool[8,8];
//Se crea un array bidimensional llamado tablero de 8x8
Acceder a los elementos de un array
Para acceder a un elemento en una posición i solo hay que hacer mi_array[i] si
tiene una dimensión, si tiene más de una dimensión, podemos hacer my_array[i,j]
(noten que es diferente a C++). Veamos algunos ejemplos:
int [] elementos = new int[]{5,4,3,2,1};
int x = elementos[2];
Console.WriteLine(x); //Se imprime 3
Es importante saber que para referirse al elemento de la posición n del array, hay
que escribirlo como my_array[n-1] ya que my_array[0] devuelve el primer elemento
del array. Es un poco incómodo, pero con la práctica te acostumbras. Para
acceder al último elemento
Sintaxis de Arreglos
int[] array = new int[5];
string[] stringArray = new string[6];
int[] array1 = new int[] { 1, 3, 5, 7, 9 };
string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
Algunos ejemplos
Ahora veremos algunos ejemplos, para que se familiaricen con la sintaxis y vean
como usarlos en métodos y aplicaciones sencillas.
Ejemplo 1
Hagamos un método o función, que diga si un número entero está o no dentro de
un array.
public static bool Pertenece (int numero, int [] array)
{
// Recorremos todas las posiciones del array desde
// 0 hasta "array.Lenght", que nos da la longitud.
for(int i=0; i<array.Length; i++)
{
// Preguntamos si el elemento en la posición i del array es igual
al número que buscamos.
if(array[i]==numero)
// En caso de que encontremos el número devolvemos true.
return true;
}
return false
}