--数组的大小是不固定的 --一维数组的逻辑结构是线性表索引从1开始 array1 = {"Lua", "Tutorial"} for i=1,2 do print(array1[i]) end --索引可以为负数 array2 = {} for i=-1,1 do array2[i] = i * 2 end for i=-1,1 do print(array2[i]) end --多维数组:即数组中包含数组或者一维数组的索引键对应一个数组 --三行三列二维数组 array3 = {} for i=1,3 do array3[i] = {} for j=1,3 do array3[i][j] = i * j end end for i=1,3 do for j=1,3 do print(array3[i][j]) end end --不同索引键的三行三列阵列多维数组 --索引是这样的 : 4 5 6 7 8 9 10 11 12 --数组设定了指定的索引值,这样可以避免出现 nil 值,有利于节省内存空间 array4 = {} maxRows = 3 maxColumns = 3 for row=1,maxRows do for col=1,maxColumns do array4[row * maxColumns + col] = row * col end end for row=1,maxRows do for col=1,maxColumns do print(array4[row * maxColumns + col]) end end
参考:http://www.runoob.com/lua/lua-arrays.html
码云上的相关工程:https://gitee.com/luguoshuai/LearnLua