Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Arreglos Multidimensionales | Arrays
Conceptos básicos de C#
course content

Contenido del Curso

Conceptos básicos de C#

Conceptos básicos de C#

1. Comenzando
2. Manejo de Tipos de Datos
3. Estructuras de Control
4. Bucles
5. Arrays
6. Métodos

book
Arreglos Multidimensionales

Los arreglos también pueden tener arreglos adicionales dentro de ellos. Estos arreglos se llaman Arreglos Multidimensionales. Son útiles cuando queremos almacenar los datos en una forma tabular, con filas y columnas, o en forma de matriz.

Podemos declarar un arreglo bidimensional usando la siguiente sintaxis:

cs

main

copy
1
datatype[][] arrayName = new datatype[lengthX, lengthY];

El arreglo creado usando la sintaxis anterior tendrá una longitud (tamaño) igual a lengthX y cada elemento será un arreglo de tamaño lengthY. Por ejemplo:

cs

main

copy
1
int[,] numbers = new int[3,3];

En el caso anterior, creamos una nueva matriz bidimensional de tamaño 3x3. Esto significa que puede contener 9 números enteros. Podemos inicializar un arreglo 2D usando la siguiente sintaxis:

cs

main

copy
12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Consider the example with real values:

cs

main

copy
12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

The above is a 3x4 matrix and it can store 12 elements. The following illustration shows a 3x3 matrix in a visualized form:

Indexing in multidimensional arrays is similar to the normal arrays. We simply mention the row and the column index.

cs

main

copy
1
arrayName[row, column];

For example, if we want to access 6 from the numbers array (shown in the illustration), we will access the 2nd row and the 3rd column:

cs

main

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Higher dimensional arrays are also possible by adding extra commas to the declaration syntax:

cs

main

copy
123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

In the above code myArray3D will have 60 elements (3x4x5), while myArray4D will have 1800 elements (5x4x9x10).

Following is how you would initialize a 3D array:

cs

main

copy
123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
What is the correct code for accessing "Pumpkin" element from the `foods` array:

What is the correct code for accessing "Pumpkin" element from the foods array:

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 5
We're sorry to hear that something went wrong. What happened?
some-alt