43. Lua table 库

table 库

  1. insert t={10,20,30} table.insert(t,1,15) --> t = { 15 , 10 , 20 , 30 }
  • table.insert(t,1,15) 第二个参数 位置 第三个参数 值
  • table.insert(t,15) 默认插入到末尾
  1. remove(t,2) 删除 位置为 2 的值
  2. sort 排序
  3. concat : 连接

示例代码

  t = {}
  table.insert( t , 1 , 1 )
  print("#t",#t)
  table.remove( t , 1 )
  print("#t",#t)


  lines = {
    luaH_set = 10 ,
    luaH_het = 24 ,
    luaH_present = 48
  }

  a = {}
  for n in pairs( lines ) do
    a[#a+1] = n
  end
  table.sort(a)
  for i,n in ipairs(a) do
    print(" a : " , n)
  end

  function pairsByKeys( t , f )
    local a = {}
    for n in pairs(t) do a[#a+1] = n end
    table.sort( a , f )
    local i = 0  -- 迭代器变量
    return function()  -- 迭代器函数
        i = i + 1
        return a[i],t[a[i]]
    end
  end

  for name, line in pairsByKeys(lines) do
    print( "pairsByKeys : ", name , line)
  end


  function rconcat( l )
    if type(l) ~= "table" then
        return l
    end
    local res = {}
    for i = 1 , #l do
        res[i] = rconcat( l[i] )
    end
    return table.concat(res)
  end

  print("concat(lines) : " , rconcat( {{" a ",{" nice "}}, {{" long "},{" list "}}} )
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • table.concat(table, sep, start, end) concat是concatenate(连...
    曾令伟阅读 4,121评论 0 2
  • 这个库提供了表处理的通用函数。 所有函数都放在表 table。无论何时,若一个操作需要取表的长度, 这张表必须是一...
    chiguozi阅读 4,251评论 0 1
  • 简介 table库中函数针对的几乎都是数组类型的 实例 table.getn()-- #表长-- table.ge...
    叫我颜先生阅读 3,868评论 0 0
  • table库封装了一些常用的方法,可以在日常的列表操作时提供便利,先看一下table中提供的一些方法。 方法描述t...
    李小磊_0867阅读 4,581评论 0 3
  • --回调方法的写法 --[[function Add(_a,_b,_callback) --body sum =_...
    胤醚貔貅阅读 3,265评论 0 0

友情链接更多精彩内容