11.1 数组

lua中通过整数下标访问table中元素,即是数组。并且数组大小不固定,可动态增长。

通常我们初始化数组时,就间接地定义了数组的大小,例如:

a = {}     -- new array

for i=1, 1000 do

    a[i] = 0

end

数组a的大小为1000,访问1-1000范围外的值,将返回nil。数组下标可以根据需要,从任意值开始,比如:

-- creates an array with indices from -5 to 5

a = {}

for i=-5, 5 do

    a[i] = 0

end

然而习惯上,Lua的下标从1开始。Lua的标准库遵循此惯例,因此你的数组下标必须也是从1开始,才可以使用标准库的函数。

我们可以用构造器在创建数组的同时初始化数组:

squares = {1, 4, 9, 16, 25, 36, 49, 64, 81}

这样的语句中,数组的大小可以任意的大。


相关链接:
lua程序设计目录 - 中国lua开发者 - lua论坛