【问题标题】:why is tables in lua designed in this way?为什么lua中的表是这样设计的?
【发布时间】:2022-11-13 23:37:02
【问题描述】:

我对语言 lua 中的以下语法感到困惑:

w = {x=0, y=0}
w[1] = "another"

在我看来,第一句话将 w 描述为类似 dict 的结构,然后将其描述为数组,第一个和第二个的 w 是否相同?如果是这样,为什么?为什么两个不同的东西可以存储在一个w中?

我是 lua 和英语的新手,请原谅。

我想知道一些关于lua指定的想法和我的问题的解释。

【问题讨论】:

    标签: lua lua-table


    【解决方案1】:

    数组在概念上只是一系列键/值对。只是“键”都是整数,并且是从(在 Lua 的情况下)1 开始的整数序列。

    Lua 认识到“字典”和“数组”实际上是一回事。它将这两个概念捆绑在一起成为一个类型:Lua 的“表”。

    在 Lua 表中,键可以(几乎)是任何东西。包括整数。包括从 1 开始并递增的整数。因此,一个 Lua 表被称为有一个“数组部分”,它是从整数 1 到值不是nil 的最大整数的所有整数键。这就是取一张桌子的“长度”的意思。

    【讨论】:

      猜你喜欢
      • 2017-10-31
      • 2012-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-24
      • 1970-01-01
      • 1970-01-01
      • 2016-05-04
      相关资源
      最近更新 更多