lua的table的删除操作

  • 直接使用table的remove方法
local tab = {1, 2, 3}
table.remove(tab)    --默认删除最后一个元素,第二个参数可以指定删除位置

删除后,后面的元素会往前移动。有点像C++的std::vector删除一个元素一样。这个操作会改变表的长度,即#tab会-1;这很合理。

  • 可以给要删除的元素赋值为nil
tab[2] = nil

这种方法,相当于间接把这个元素从表中删除了。但是注意两点:

(1)表的长度不会改变,即#tab的值依然是3

(2)使用for语句遍历tab时,不会遍历完整的tab,碰到nil(tab的第二个元素)时,就停下了

转载于:https://www.cnblogs.com/dongerlei/p/10190428.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值