美文网首页
Lua删除table中数据必须知道的小技巧

Lua删除table中数据必须知道的小技巧

作者: Lee坚武 | 来源:发表于2015-08-21 11:04 被阅读2898次

这里的重点是要求该数组删除数据后依然保持key的连续性且始终是从1开始的

这样也可以保证 ipairs()的正确性 等等

-- 第一种删除数据方法

这种方法无疑是最好的,先用一个临时表记录要删除的所有key,然后再延迟统一删除.

local a = {11,12,13,13,15,13,13,17,18}

local b = {}

for k,v in pairs(a) do

if v == 13 then

table.insert(b, k)

end

end

table.sort(b,function( d,e)

return d>e

end)

for k,v in pairs(b) do

table.remove(a, v)

end

b = nil

print(unpack(a))

这里的重点是该数组key可以随意指定且可不具备连续性的要求的前提下

-- 第二种删除数据方法

local c = {a=11, b=12, c=13, d=13, e=15, f=13,g=13, h=17, j=18}

for k,v in pairs(c) do

if v == 13 then

c[k] = nil

end

end

相关文章

  • Lua删除table中数据必须知道的小技巧

    这里的重点是要求该数组删除数据后依然保持key的连续性且始终是从1开始的 这样也可以保证 ipairs()的正确性...

  • Lua table(表)

    table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数字、字典等。 Lua table 使用...

  • lua表(table)

    table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数组、字典等。Lua table 使用关...

  • Lua 元表和元方法

    table 作为 Lua 中唯一的数据结构,我们可以利用 table 实现面向对象编程中的类、继承、多重继承等等。...

  • 游戏工程师面试要点整理

    浅析Lua中table的遍历和删除 stl:vector stl:map 插入排序 希尔排序 快速排序 c/c++...

  • mysql

    新建表 删除表 删除数据 DELETE 用来删除表中的数据DELETE table_name [WHERE{con...

  • lua的table相关操作

    lua中的一种重要的数据结构:table 一 table的特性让我们编程更加方便: 1 table是一种关联数组...

  • aardio获取main()主函数启动时的传入参数

    aardio类似lua语言,也使用表table的数据结构

  • 2017.5.25

    lua学习总结:数据结构: 使用Lua实现链表(单向链表和双向链表),队列 使用Lua保存图,用table保存,每...

  • 基础: Lua数据对象模型

    Lua数据对象模型 首先Lua语言分为8种基本类型:nil、number、bool、string、table、th...

网友评论

      本文标题:Lua删除table中数据必须知道的小技巧

      本文链接:https://www.haomeiwen.com/subject/vzygqttx.html