MATRICES EN CSHARP | C# Arrays

C# Matrices - Arrays


Una variable solo puede contener un valor literal, ejemplo:  int x = 100; Si desea almacenar múltiples valores literales, será engorroso crear múltiples variables.

Para superar este problema, C# incluye la matriz (Array).


Un Array es la estructura de datos que almacena un número fijo de valores literales del mismo tipo de datos.


Un  Array se declara de la misma manera que la variable, pero con corchetes []. Lo siguiente declara matrices de diferentes tipos.

Ejemplos de declaración de Matrices - Arrays


int[] numeros;  // almacena valores enteros
string[] nombres; // almacena valores tipo cadena
double[] salarios; // almacena valores tipo double
object[] objs; // almacena objetos
Estudiante[] estudiantes; // almacena objeto de tipo de clase Estudiante



El ejemplo anterior solo declara matrices. Para insertarle valores, debemos crear un objeto de una matriz. Lo siguiente crea una matriz del tipo int.


int[] nums = new int[5];

La matriz de números anterior puede almacenar hasta cinco enteros. 5 entre corchetes new int [5] especifica el tamaño de una matriz. Una matriz no puede almacenar más elementos que el tamaño especificado. Intentar agregar más elementos dará como resultado un error. La matriz nums todavía no almacena enteros. Una forma de agregar elementos en el momento de la declaración es la siguiente.


int[] nums = new int[5]{ 10, 15, 16, 8, 6 };


Arriba, agregamos cinco literales enteros separados por una coma en las llaves {}.

También podemos crear una matriz y agregar elementos sin especificar el tamaño, como se muestra a continuación.


int[] nums = new int[]{ 10, 15, 16, 8, 6 };
int[] nums = { 10, 15, 16, 8, 6 };


En el ejemplo anterior, no hemos especificado el tamaño de una matriz. El tamaño se deducirá de la cantidad de elementos que incluye en el momento de la declaración.

Una matriz almacena el número fijo de elementos. Por lo tanto, debe especificar el tamaño de una matriz o agregar elementos al momento de la declaración; de lo contrario, dará un error en tiempo de compilación. Lo siguiente dará un error en tiempo de compilación.


int[] nums = new int[]; // error: La declaracion de un Array debe tener una longuitud o inicializador de Array

Índice de matriz

La matriz almacena elementos secuencial-mente en la memoria, y es por eso que es más rápido que cualquier otro tipo de colección en C #. Cada elemento tiene un índice único que comienza con 0 y aumenta en 1 posteriormente. Un índice del primer elemento (predeterminado a 0) se denomina límite inferior, y un índice del último elemento se denomina límite superior de una matriz. La figura ilustra la matriz.


Acceso a elementos de un Array

Podemos agregar, insertar, actualizar y acceder a valores utilizando el índice, como se muestra a continuación.

//Ejemplo: Agregando valores unando el indice
int[] nums = new int[5];
nums[0] = 7;
nums[1] = 42;
nums[2] = 12;
nums[3] = 1;
nums[4] = 22;
//nums[5] = 100;  // Lanzara un Error, Indice fuera de Rango


Del mismo modo, podemos recuperar valores en un índice particular, como se muestra a continuación:


//Ejemplo: Accesando a elementos del Array
int[] nums = new int[5]{ 7, 42, 12, 1, 22 };
nums[0];  //obtenemos 7
nums[1];  //obtenemos 42
nums[2];  //obtenemos 12
nums[3];  //obtenemos 1
nums[4];  //obtenemos 22
//nums[5];  //Lanzara un Error, Indice fuera de Rango



No hay comentarios:

Publicar un comentario

DELEGADOS EN C# .NET | PUNTEROS A METODOS

Delegados Tal como hemos comentado, los eventos y los delegados están muy unidos en C#. De hecho no se pueden definir eventos si no def...