Matrices unidimensionales (Guía de programación de C#)Single-Dimensional Arrays (C# Programming Guide)

Puede declarar una matriz unidimensional de cinco enteros tal y como se muestra en el ejemplo siguiente:You can declare a single-dimensional array of five integers as shown in the following example:

int[] array = new int[5];

Esta matriz contiene los elementos de array[0] a array[4].This array contains the elements from array[0] to array[4]. El operador new se usa para crear la matriz e inicializar los elementos de matriz con sus valores predeterminados.The new operator is used to create the array and initialize the array elements to their default values. En este ejemplo, todos los elementos de matriz se inicializan en cero.In this example, all the array elements are initialized to zero.

Una matriz que almacena elementos de cadena se puede declarar de la misma forma.An array that stores string elements can be declared in the same way. Por ejemplo:For example:

string[] stringArray = new string[6];

Inicialización de matrizArray Initialization

Es posible inicializar una matriz en la declaración, en cuyo caso, el especificador de longitud no es necesario porque ya lo proporciona el número de elementos de la lista de inicialización.It is possible to initialize an array upon declaration, in which case, the length specifier is not needed because it is already supplied by the number of elements in the initialization list. Por ejemplo:For example:

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

Se puede inicializar una matriz de cadenas del mismo modo.A string array can be initialized in the same way. La siguiente es una declaración de una matriz de cadenas donde cada elemento de la matriz se inicializa mediante un nombre de un día:The following is a declaration of a string array where each array element is initialized by a name of a day:

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

Al inicializar una matriz en la declaración, puede usar los siguientes métodos abreviados:When you initialize an array upon declaration, you can use the following shortcuts:

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 debe usar el operador new al asignar una matriz a esta variable.It is possible to declare an array variable without initialization, but you must use the new operator when you assign an array to this variable. Por ejemplo:For example:

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

C# 3.0 presenta matrices con tipo implícito.C# 3.0 introduces implicitly typed arrays. Para obtener más información, vea Matrices con asignación implícita de tipos.For more information, see Implicitly Typed Arrays.

Matrices de tipo de valor y tipo de referenciaValue Type and Reference Type Arrays

Tenga en cuenta la siguiente declaración de matriz:Consider the following array declaration:

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.The result of this statement depends on whether SomeType is a value type or a reference type. Si es un tipo de valor, la instrucción crea una matriz de 10 elementos y cada uno de ellos tiene el tipo SomeType.If it is a value type, the statement creates an array of 10 elements, each of which has the type SomeType. Si SomeType es un tipo de referencia, la instrucción crea una matriz de 10 elementos y cada uno de ellos se inicializa en una referencia nula.If SomeType is a reference type, the statement creates an array of 10 elements, each of which is initialized to a null reference.

Para obtener más información sobre los tipos de valor y de referencia, consulte Tipos de valor y Tipos de referencia.For more information about value types and reference types, see Value types and Reference types.

Vea tambiénSee also