Arreglos Multidimensionales
Desliza para mostrar el menú
Los arreglos también pueden contener otros arreglos en su interior. Estos arreglos se denominan arreglos multidimensionales. Son útiles cuando se desea almacenar datos en una forma tabular, con filas y columnas, o en forma de matriz.
Se puede declarar un arreglo bidimensional utilizando la siguiente sintaxis:
main.cs
1datatype[][] arrayName = new datatype[lengthX, lengthY];
El arreglo creado con la sintaxis anterior tendrá una longitud (tamaño) igual a lengthX y cada elemento será un arreglo de tamaño lengthY:
main.cs
1int[,] numbers = new int[3,3];
En el caso anterior, se crea una nueva matriz bidimensional de tamaño 3x3. Esto significa que puede contener 9 números enteros. Se puede inicializar un arreglo 2D utilizando la siguiente sintaxis:
main.cs
12345datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };
Considera el ejemplo con valores reales:
main.cs
12345678910111213141516171819202122using 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 + " "); } } } }
Lo anterior es una matriz de 3x4 y puede almacenar 12 elementos. La siguiente ilustración muestra una matriz de 3x3 en forma visualizada:
Indexación en arreglos multidimensionales es similar a los arreglos normales. Simplemente se indica el índice de la fila y el índice de la columna.
main.cs
1arrayName[row, column];
Por ejemplo, si queremos acceder al valor 6 del arreglo numbers (mostrado en la ilustración), se debe utilizar el elemento en el índice [2][2], que corresponde al segundo índice de fila y al segundo índice de columna.
main.cs
123456789101112131415161718using 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 } } }
También es posible utilizar arreglos de mayor dimensión agregando comas adicionales a la sintaxis de declaración:
main.cs
123int[,,] 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
En el código anterior, myArray3D tendrá 60 elementos (3x4x5), mientras que myArray4D tendrá 1800 elementos (5x4x9x10).
A continuación se muestra cómo inicializar un arreglo 3D:
main.cs
123456int[,,] 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} } };
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla