美文网首页
Lua如何打印table表

Lua如何打印table表

作者: George2016 | 来源:发表于2018-05-07 14:17 被阅读12次

「实现代码」

---
-- @function: 打印table的内容,递归
-- @param: tbl 要打印的table
-- @param: level 递归的层数,默认不用传值进来
-- @param: filteDefault 是否过滤打印构造函数,默认为是
-- @return: return
function PrintTable( tbl , level, filteDefault)
  local msg = ""
  filteDefault = filteDefault or true --默认过滤关键字(DeleteMe, _class_type)
  level = level or 1
  local indent_str = ""
  for i = 1, level do
    indent_str = indent_str.."  "
  end

  print(indent_str .. "{")
  for k,v in pairs(tbl) do
    if filteDefault then
      if k ~= "_class_type" and k ~= "DeleteMe" then
        local item_str = string.format("%s%s = %s", indent_str .. " ",tostring(k), tostring(v))
        print(item_str)
        if type(v) == "table" then
          PrintTable(v, level + 1)
        end
      end
    else
      local item_str = string.format("%s%s = %s", indent_str .. " ",tostring(k), tostring(v))
      print(item_str)
      if type(v) == "table" then
        PrintTable(v, level + 1)
      end
    end
  end
  print(indent_str .. "}")
end

local x = {a = 20,20,60,{a = {a = 1,2323},2323}}
PrintTable(x)

用sublime直接ctrl+B编译运行,就可以看到控制台里正确的输出了table的内容。

{
   1 = 20
   2 = 60
   3 = table: 006DB668
    {
     1 = 2323
     a = table: 006DB7D0
      {
       1 = 2323
       a = 1
      }
    }
   a = 20
  }

相关文章

  • Lua如何打印table表

    「实现代码」 用sublime直接ctrl+B编译运行,就可以看到控制台里正确的输出了table的内容。

  • Lua学习

    Lua 学习 元表 setmetatable(table,metatable): 对指定table设置元表(met...

  • 打印lua table

    最近看了下Markdown,决定拿来记录下学习笔记。参考这篇博客写的打印输出lua table。要点是缩进对齐和防...

  • Lua table(表)

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

  • lua表(table)

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

  • lua 打印递归打印table

    -- @function: 打印table的内容,递归-- @param: tbl 要打印的table-- @pa...

  • Lua----元表(Metatable)

    什么是元表 This metatable is an ordinary Lua table that define...

  • 学习常用链接

    //Lua Lua table详解 Lua 元表详解 云风博客 //Unity Unity知识点 栈和队列 Uni...

  • Lua学习之路

    打印hello world 复杂一点的语法 交互模式 终端模式下命令 lua变量和块 lua table 算数运算...

  • lua元表

    1、Lua 元表(Metatable) setmetatable(table,metatable): 对指定tab...

网友评论

      本文标题:Lua如何打印table表

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