Lua Table Constructor 中的初始化顺序
2017-2-15 16:55:25
收藏:0
阅读:105
评论:1
所以,一个表构造器有两个组成部分,类似列表和类似记录。类似列表的条目总是优先于类似记录的条目吗?我的意思是,考虑以下情况:
a = {[1]=1, [2]=2, 3}
print(a[1]) -- 3
a = {1, [2]=2, [1]=3}
print(a[1]) -- 1
索引1始终与第一个类似列表的条目相关联,2与第二个相关联,等等吗?还是有其他东西?
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

Lua 中有两种类型的表,数组和字典,这些被称为“列表”和“记录”。一个 数组 按顺序包含值,这使你有一些优势,比如更快的迭代或插入/删除值。字典 就像一个巨大的查找表,它没有顺序,它的优势在于你可以使用任何值作为键,并且没有太多限制。
当你构造一个表时,有两种语法,你可以用逗号分隔值,例如
{2,4,6,8},从而创建一个 _数组_,它的键从1到n,或者你可以定义键值对,例如{[1]=2,[58]=4,[368]=6,[48983]=8},创建一个 _字典_,你可以经常混合这些语法,你不会遇到任何问题,但是在 你的 场景下情况不一样。你正在定义表的初始构造中重复的键。这是最常见的不切实际的情况,因此在语言开发过程中没有真正思考过这个问题。这意味着发生的实际上是未指定的行为。不完全了解这会产生什么影响,并且可能在不同的平台或实现之间不一致。
因此,你不应该在任何商业项目或与其他人分享的任何代码中使用它。当你不确定时,构造一个空表,之后再定义键值对。