【发布时间】:2015-11-17 02:47:55
【问题描述】:
所以我是 lua 新手,我无法弄清楚如何在数组中定位数组中的元素。
表格和数组一样吗?为什么数组和对象具有相同的语法?有区别吗?
【问题讨论】:
标签: multidimensional-array lua lua-table
所以我是 lua 新手,我无法弄清楚如何在数组中定位数组中的元素。
表格和数组一样吗?为什么数组和对象具有相同的语法?有区别吗?
【问题讨论】:
标签: multidimensional-array lua lua-table
只需多次使用表索引运算符,例如:
local data = { { "northwest", "north", "northeast" },
{ "west", nil, "east" },
{ "southwest", "south", "southeast" } }
print(data[2][3]) -- prints east
关于表、数组、对象等的混淆:Lua 没有“数组”。 Lua 没有“对象”。对于结构,Lua 只有表,可以作为数组使用,也可以作为对象使用——但对于 Lua 来说,它是一张表。它们就是你所创造的。
【讨论】:
table.insert(tails, table.getn(tails), {x = snake.x, y = snake.y}) 将表定位为:tails[1][1] 和 tails[1][2]
x 和y 属性的一维对象数组。您是否尝试通过其 x 和 y 值获取对象之一?
somex = tails[1][1] 应该指的是tails -> {{x=*10*, y =15},{x=5,y=10}}
somex = tails[1]["x"],Lua 允许您方便地将其缩写为 somex = tails[1].x。