注册 登录
编程论坛 Lua论坛

请教有关table.insert的插入问题

邹阳 发布于 2023-02-11 08:36, 1028 次点击
    正在学习Lua的table相关操作,其中对于使用insert将参数插入到指定位置时,遇到了些困惑,如下图所示。
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录


求解,不懂为什么打印出来是这样的?
3 回复
#2
阳光上的桥2023-02-17 15:19
该题目(如果是让写出代码结果)涉及三个知识点:

一是pairs循环输出的顺序,一般认为顺序是不确定的,我的电脑上执行-1在0之前;

二是table的初始化赋值,对没有指定下标的项从1开始,如果初始化之后输出一次t的内容,会是这样的:
t[1]:"B"
t[2]:"C"
t[3]:"D"
t[-1]:"fk"
t[0]:"A"

三是table.insert的工作方法,会把指定的E插入到[2]处,原来的所有内容后移,因此输出结果和帖子一致。
#3
邹阳2023-03-01 01:16
回复 2楼 阳光上的桥
非常感谢你的回答,但是Lua的这个Table还是暂时没有办法很好的理解到位。
#4
阳光上的桥2023-03-01 11:29
由于LUA同时实现了其它语言“数组”和“字典”的功能,是会让人觉得别扭,慢慢适应吧。
1