为什么 Lua 数组(表)从 1 而不是 0 开始?

是的,Lua 中的数组以索引 1 作为第一个索引开始,而不是您在大多数编程语言中可能看到的索引 0。

示例

考虑下面显示的例子 -

arr = {10,11,12,13,14}

print(arr[0])

print(arr[1])

在上面的例子中,我们打印了索引 0 和 1 处的值,默认情况下,索引 0 处的值将为 nil,就像在 Lua 中一样,数组从 1 开始索引,而不是 0。

输出结果

nil

10

所以,现在我们知道数组是基于 1 索引而不是基于 0 索引的。但是,等等,为什么是 1-index 和 0-index?

实际上,在基于 0 索引的数组或基于 1 索引的数组之间进行选择时,关于哪种方法更好以及为什么更好的争论一直存在,但没有明确的答案。

主要的原因是,在Lua中数组是基于1的索引是该语言Lua的本身是由一个名为语言启发溶胶,这是专为石油工程师们有任何的编程语言或根本没有正规的训练在计算机的任何领域科学。所以,之前没有任何编程语言知识的人,或者数据在现实中是如何存储的,通常很难理解从 0 开始索引背后的逻辑,因此 Lua 开发人员认为这可能是一个更好的主意是从 1 本身开始索引,这将使这种情况变得无关紧要,并且对于编程新手来说更容易开始使用 Lua 而没有任何重大问题。

此外,Lua 提供了非常合适的方法,可以帮助任何使用 Lua 的开发人员避免 0 索引和 1 索引之间的混淆,因为这些方法甚至不需要索引。其中一些方法是通用的 for循环或ipairs 运算符。

以上是 为什么 Lua 数组(表)从 1 而不是 0 开始? 的全部内容, 来源链接: utcz.com/z/349193.html

回到顶部