我不明白Lua这部分决定背后的理由。为什么索引从1开始?我读过(和其他许多人一样)this great paper 。在我看来,这似乎是一种学习和编程都非常愉快的语言的一个奇怪的角落。不要误会我的意思,Lua 很棒,但必须在某个地方有一个解释。我(在网上)发现的大部分内容只是说索引从 1 开始。句号。
阅读其设计者对这个主题的看法会非常有趣。
请注意,我是 Lua 的“非常”初学者,我希望我没有遗漏一些关于表的明显内容。
最佳答案
Lua 源自 Sol,这是一种为没有接受过计算机编程正规培训的石油工程师设计的语言。没有受过计算训练的人认为从零开始计数实在是太奇怪了。通过采用基于 1 的数组和字符串索引,Lua 设计者避免了混淆其第一批客户和赞助商的期望。
虽然一开始我也觉得它们很奇怪,但我已经学会了喜欢基于 0 的数组。但我对 Lua 的基于 1 的数组还算满意,尤其是
使用 Lua 的通用 for
循环和 ipairs
运算符 - 我通常可以避免担心数组的索引方式。
关于arrays - 为什么Lua数组(表)从1开始而不是从0开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2785704/