matriz Lua
Matriz es una colección de el mismo tipo de elementos de datos en un orden determinado, que puede ser matrices unidimensionales y matrices multidimensionales.
los valores de clave de índice de matriz Lua se pueden utilizar como un entero, el tamaño de la matriz no es fijo.
Unidimensional matriz
matriz unidimensional es una matriz de la estructura más simple, lógico es una forma lineal. One-dimensional array se puede utilizar para los elementos de bucle de la matriz, los siguientes ejemplos:
array = {"Lua", "Tutorial"} for i= 0, 2 do print(array[i]) end
La salida se se ejecuta el código anterior:
nil Lua Tutorial
Como se puede ver, se puede usar un índice de enteros para acceder a elementos de la matriz, si se sabe que no hay valor de índice se devuelve nulo.
En Lua valores de índice son 1 comienzo, pero también se puede especificar 0.
Salvo Además, también puede ser un valor de índice de matriz negativa:
array = {} for i= -2, 2 do array[i] = i *2 end for i = -2,2 do print(array[i]) end
La salida se se ejecuta el código anterior:
-4 -2 0 2 4
Las matrices multidimensionales
matriz multidimensional que es una matriz que contiene una matriz de clave de índice o una matriz unidimensional correspondiente a la matriz.
Aquí es una matriz de tres filas y tres columnas en una matriz multidimensional:
-- 初始化数组 array = {} for i=1,3 do array[i] = {} for j=1,3 do array[i][j] = i*j end end -- 访问数组 for i=1,3 do for j=1,3 do print(array[i][j]) end end
La salida se se ejecuta el código anterior:
1 2 3 2 4 6 3 6 9
Tres filas de tres conjuntos de matrices multidimensionales diferentes claves de índice:
-- 初始化数组 array = {} maxRows = 3 maxColumns = 3 for row=1,maxRows do for col=1,maxColumns do array[row*maxColumns +col] = row*col end end -- 访问数组 for row=1,maxRows do for col=1,maxColumns do print(array[row*maxColumns +col]) end end
La salida se se ejecuta el código anterior:
1 2 3 2 4 6 3 6 9
Como se puede ver, los ejemplos anteriores, el índice de matriz se establece en el valor especificado, por lo que se pueden evitar con un valor nulo, ayudará a ahorrar espacio en la memoria.