社区
游戏开发
帖子详情
lua删除table元素的疑问
thcookie
2015-04-22 12:09:30
没找到LUA的板块 相信游戏开发的很多人都会 所以留疑问在这里
我现在定义一个table
local DTB =
{
key1 = "aaaa",
key2 = "bbbbb",
key3 = "cccccc"
}
我现在手里有个key是key1 如何删除上面table的里的key为key1的元素 直接={} 或者 =nil 可以吗
如果=nil 再用getn去获取长度会出错吧?
...全文
459
2
打赏
收藏
lua删除table元素的疑问
没找到LUA的板块 相信游戏开发的很多人都会 所以留疑问在这里 我现在定义一个table local DTB = { key1 = "aaaa", key2 = "bbbbb", key3 = "cccccc" } 我现在手里有个key是key1 如何删除上面table的里的key为key1的元素 直接={} 或者 =nil 可以吗 如果=nil 再用getn去获取长度会出错吧?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
勤奋的小游侠
2015-05-15
打赏
举报
回复
DTB .key1=nil即可。 getn是获得连续数组下标的最大值,并不是获得元素个数。
漂浮一生
2015-05-14
打赏
举报
回复
table.getn获取的并不是table中元素的个数,而是数字下标的最大值,你这里有个误区, local DTB = { key1 = "aaaa", key2 = "bbbbb", key3 = "cccccc" } 你这个table.getn(DTB) = 0
Lua
用
table
实现数据结构
数据结构
table
是
Lua
中唯一的数据结构,其他语言所提供的其他数据结构比如:arrays、records、lists、queues、sets 等,
Lua
都是通过
table
来实现,并且在
lua
中
table
很好的实现了这些数据结构。 在传统的 C 语言或者 Pascal 语言中我们经常使用 arrays 和 lists(record+pointer)来实现大部分的数据结构,在 ...
一张万能桌子的性能账本:大白话讲透
Lua
Table
性能消耗分析
文章摘要(149字): 本文深入浅出剖析
Lua
Table
的性能特性与优化策略。核心观点:
Table
由数组区和哈希区组成,数组区适合连续数字索引(高效稳定),哈希区兼容复杂键值但性能受哈希冲突影响。性能消耗集中在创建/扩容(GC压力)、嵌套查找(递归开销)、遍历(哈希区较慢)和结构不合理(稀疏数组等)场景。通过表池复用、预分配空间、键值规范化、结构扁平化等优化手段,可显著提升性能。文章结合工程案例,指出常见陷阱(循环引用、误用#运算符等),并给出异步处理、分批操作等实战建议,帮助开发者平衡
Table
的灵活性
LUA
基础:
TABLE
, ARRAY, NAMESPACE,
LUA
的面向对象
table
的声明及赋值
table
是
Lua
中的hashmap(包括其实现方式也是). 由于其包含所有数组的功能, 所以可以认为
table
是扩展了的数组.
Lua
没有再额外提供单独的数组类型. 用以下的语句声明一个空的
table
: new
Table
= {} 可以用以下的方式向
table
中添加值: new
Table
[2] = "14" 可以使用字符串形式的key值
笔记:
Lua
基础:
Table
, Array, Namespace,
Lua
的面向对象
作者:apex.Cliz
游戏开发
8,324
社区成员
23,684
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章