Esta documentación está archivada y no tiene mantenimiento.

Matrices unidimensionales (Guía de programación de C#)

Una matriz de cinco elementos enteros se puede declarar como se muestra en el ejemplo siguiente:

int[] array = new int[5];

Esta matriz contiene elementos desde array[0] hasta array[4]. El operador new se utiliza para crear la matriz e inicializar sus elementos con valores predeterminados. En este ejemplo, todos los elementos de la matriz se inicializan con cero.

Una matriz que almacena elementos de cadena se puede declarar del mismo modo. Por ejemplo:

string[] stringArray = new string[6];

Es posible inicializar una matriz en el momento de su declaración, en cuyo caso, no es necesario el especificador de rango ya que éste viene dado por el número de elementos de la lista de inicialización. Por ejemplo:

int[] array1 = new int[5] { 1, 3, 5, 7, 9 };

Una matriz de cadena se puede inicializar del mismo modo. A continuación, se muestra una declaración de una matriz de cadena en la que cada elemento de la matriz se inicializa con el nombre de un día de la semana:

string[] weekDays = new string[] { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

Cuando se inicializa una matriz en el momento de su declaración, se pueden utilizar los siguientes métodos abreviados:

int[] array2 = { 1, 3, 5, 7, 9 };
string[] weekDays2 = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

Es posible declarar una variable de matriz sin inicializarla, pero se debe utilizar el operador new al asignar una matriz a esta variable. Por ejemplo:

int[] array3;
array3 = new int[] { 1, 3, 5, 7, 9 };   // OK
//array3 = {1, 3, 5, 7, 9};   // Error

Considere la siguiente declaración de matriz:

SomeType[] array4 = new SomeType[10];

El resultado de esta instrucción depende de si SomeType es un tipo de valor o un tipo de referencia. Si es un tipo de valor, la instrucción genera una matriz de 10 instancias del tipo SomeType. Si SomeType es un tipo de referencia, la instrucción crea una matriz de 10 elementos, cada uno de los cuales se inicializa con una referencia nula.

Para obtener más información sobre los tipos de valor y los tipos de referencia, vea Tipos (Referencia de C#).

Mostrar: