Arrays multidimensionales
Matrices y arrays dentados
Arrays multidimensionales es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.
Más allá de una sola fila
Hasta ahora, los arrays eran una sola línea de valores. Un array multidimensional almacena valores en una cuadrícula, como una hoja de cálculo con filas y columnas.
Son ideales para tableros de juegos, tablas y matrices.
Declarar un array bidimensional
Un array bidimensional utiliza una coma dentro de los corchetes: [,]. Debe indicar dos tamaños: el número de filas y el número de columnas.
Esta cuadrícula tiene 2 filas y 3 columnas, por lo que contiene 6 valores.
int[,] grid = new int[2, 3];
Console.WriteLine(grid[0, 0]); // 0Acceder a las celdas
Para leer o escribir una celda, indique los índices de la fila y de la columna, separados por una coma.
Ambos índices empiezan en cero, igual que en los arrays unidimensionales.
int[,] grid = new int[2, 3];
grid[0, 1] = 7;
grid[1, 2] = 9;
Console.WriteLine(grid[1, 2]); // 9Inicializar una cuadrícula
Puede rellenar un array bidimensional al crearlo mediante llaves anidadas. Cada grupo interno corresponde a una fila.
Todas las filas deben tener el mismo número de columnas.
int[,] grid = { { 1, 2, 3 }, { 4, 5, 6 } };
Console.WriteLine(grid[1, 0]); // 4El método GetLength
Con dos dimensiones, Length proporciona el número total de celdas. Para obtener el tamaño de una dimensión, use GetLength.
GetLength(0) es el número de filas y GetLength(1) es el número de columnas.
int[,] grid = { { 1, 2, 3 }, { 4, 5, 6 } };
Console.WriteLine(grid.Length); // 6
Console.WriteLine(grid.GetLength(0)); // 2
Console.WriteLine(grid.GetLength(1)); // 3Recorrer una cuadrícula
Para visitar cada celda, use un bucle para las filas dentro de otro bucle para las columnas. El bucle externo selecciona una fila y el interno recorre sus columnas.
Use GetLength para que los bucles coincidan con el tamaño real.
int[,] grid = { { 1, 2 }, { 3, 4 } };
for (int r = 0; r < grid.GetLength(0); r++)
{
for (int c = 0; c < grid.GetLength(1); c++)
{
Console.WriteLine(grid[r, c]);
}
}Un programa completo con una cuadrícula
Este programa completo crea una cuadrícula pequeña y después imprime cada valor junto con su fila y columna.
Ejecútelo para ver las cuatro celdas enumeradas.
int[,] grid = { { 10, 20 }, { 30, 40 } };
for (int r = 0; r < grid.GetLength(0); r++)
{
for (int c = 0; c < grid.GetLength(1); c++)
{
Console.WriteLine("[" + r + "," + c + "] = " + grid[r, c]);
}
}Tres dimensiones
Puede añadir más dimensiones mediante más comas. Un array tridimensional utiliza [,,] y tres tamaños.
Considérelo como una pila de cuadrículas. Son menos habituales, pero siguen las mismas reglas.
int[,,] cube = new int[2, 2, 2];
cube[1, 1, 1] = 5;
Console.WriteLine(cube[1, 1, 1]); // 5Arrays escalonados
Un array escalonado es un array de arrays, escrito como [][]. A diferencia de una cuadrícula rectangular, cada fila puede tener una longitud diferente.
Se accede a él mediante dos pares de corchetes independientes.
int[][] jagged = new int[2][];
jagged[0] = new int[] { 1, 2 };
jagged[1] = new int[] { 3, 4, 5 };
Console.WriteLine(jagged[1][2]); // 5Rectangular frente a escalonado
Un array rectangular [,] siempre tiene filas de la misma longitud y almacena los datos de forma compacta. Un array escalonado [][] permite longitudes de fila diferentes.
Elija un array rectangular para tablas reales y uno escalonado cuando las filas varíen naturalmente de tamaño.
int[][] rows = { new[] { 1 }, new[] { 2, 3, 4 } };
Console.WriteLine(rows[0].Length); // 1
Console.WriteLine(rows[1].Length); // 3Sumar una cuadrícula
Puede sumar todos los valores de una cuadrícula añadiendo cada celda dentro de bucles anidados.
Este patrón se adapta a cualquier número de filas y columnas.
int[,] grid = { { 1, 2 }, { 3, 4 } };
int total = 0;
foreach (int v in grid)
{
total += v;
}
Console.WriteLine(total); // 10Comprobación rápida
Compruebe cuánto sabe sobre los arrays multidimensionales.
Resumen
Ha aprendido a crear cuadrículas con [,], acceder a las celdas mediante índices de fila y columna y medirlas con GetLength.
Los bucles anidados visitan cada celda, las comas adicionales añaden dimensiones y los arrays escalonados [][] permiten filas de distintas longitudes. Ahora puede almacenar y procesar tablas de datos en C#.
Aprende C# con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 93
- Lecciones
- 346
Preguntas frecuentes
¿La lección «Arrays multidimensionales» es gratis?
Sí — el texto completo de «Arrays multidimensionales» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Arrays multidimensionales»?
Matrices y arrays dentados Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar C# Academy?
No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Arrays multidimensionales»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de C# Academy?
Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Declarar arrays
- Indexación y longitud
- Recorrer arrays
- Arrays multidimensionales