数组作为lua表中的值

时间:2017-04-09 21:38:53

标签: arrays lua corona key-value lua-table

我无法找到我的问题的答案:你能在lua表中使用数组作为值吗?

local colors = {"blue" = {0,0,1,1}, "green" = {0,1,0,1}, "red" = {1,0,0,1} , "orange" = {0.5, 0, 0.5, 1}, "black" = {0,0,0,1}, "gold" = {1, 215/255, 0, 1}}

我使用corona sdk获取此行的错误:

  

'}'预计在'='

附近

1 个答案:

答案 0 :(得分:4)

它的表一直向下:-)是的,表(包括像数组一样索引的表)可以是Lua中表的元素。这个chapter in the Lua manual解释了定义表格元素的不同方法。

在您的示例中,不应在键周围加上引号。

local colors = { blue = { 0, 1, ...}, green = { ... }, ... }

或者你可以这样做:

local colors = {}
colors[ "blue" ] = { 0, ... }
colors[ "green" ] = ...

或者

colors.blue = { 0, ....  }
colors.green = ....

后者对于其他形式是syntactic sugar