【问题标题】:How to make string, a table name in Lua [duplicate]如何制作字符串,Lua中的表名[重复]
【发布时间】:2014-06-21 23:26:25
【问题描述】:

我有一个这样的 Lua 表:

table2 = {}

我有一个值是:

value = 2

然后,我想通过该值声明表名,如下所示:

tableName = "table"..value

但它返回 nil 它并没有声明表名。

谁能告诉我怎么做?我的意思是,如果我有多个表,例如 table1 table2 table3 ... tableN ... 我如何通过这种格式声明它:

tablename = "table"..value

【问题讨论】:

  • 该语言必须明确地不被称为“LUA”。无论如何,所有大写字母都会受到伤害。它的专有名称是 Lua。

标签: string lua lua-table


【解决方案1】:
tableName = "table" .. value

tableName 是一个值为"table2" 的字符串,注意最好像这样使用tostring

tableName = "table" .. tostring(value)

无论哪种方式,如果table2 是全局的,您可以使用_G[tableName] 来访问它。

【讨论】:

  • 使用_ENV而不是_G可能更有效。
  • 我试过这个:tableName = "table" .. tostring(value) 但返回 nil。我会试试 _G 和 _ENV,反正表是全局的。
  • @user3762712 此问题已作为重复问题关闭,如果我的回答和重复问题的回答不能解决您的问题,请学习 How to create a Minimal, Complete, and Verifiable example,如果您不这样做,请编辑您的问题认为它是重复的,或者提出一个新问题。
猜你喜欢
  • 1970-01-01
  • 2019-04-12
  • 2016-03-02
  • 2013-08-21
  • 2020-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-25
相关资源
最近更新 更多