LUA 表结构的使用

0x00 什么是表
table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数字、字典等。
Lua table 使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil。
Lua table 是不固定大小的,你可以根据自己需要进行扩容。
Lua也是通过table来解决模块(module)、包(package)和对象(Object)的。

0x01 怎么使用构建表

local arr = {‘a‘,‘b‘,‘c‘,‘d‘,‘e‘, ‘f‘}
local  map = {[1]="reacher", [2]="guazi", [3]="jack"}
local data = {1,2,3,4,[‘x‘]=‘reacher‘,[‘y‘]=‘guazi‘}

0x02 对表内的数据进行遍历

local arr = {‘a‘,‘b‘,‘c‘,‘d‘,‘e‘, ‘f‘}
local  map = {[1]="reacher", [2]="guazi", [3]="jack"}
local data = {1,2,3,4,[‘x‘]=‘reacher‘,[‘y‘]=‘guazi‘}

0x02 对表内的数据进行遍历
--数组
local arr = {‘a‘,‘b‘,‘c‘,‘d‘,‘e‘, ‘f‘}
for key, value in pairs(arr)
do
	--print(arr[key]);
	print(value);
end

----map
local  map = {[1]="reacher", [2]="guazi", [3]="jack"}
--key代表索引编号, value数组内的值
for key, value in  pairs(map)
do
	print("NO:"..key);
	print(map[key]);
end

----数组和map混合
local data = {1,2,3,4,[‘x‘]=‘reacher‘,[‘y‘]=‘guazi‘}
for  key, value in pairs(data)
do
	print(‘NO:‘..key);
	print(value); --等价print(data[key]);
end

  

时间: 2024-11-10 07:26:55

LUA 表结构的使用的相关文章

游戏资源自动转换成Lua表

关于这个问题,几年前已经做过一个工具,自动导出成一个c++的struct,然后用vector存储这些数据,然而在实践中发现在遇到多层嵌套时,这种数据表现是非常乏力的.比如掉落表会配多个掉落物,每个掉落物都有数量.概率等.那么最好是将物品ID,数量,概率设置为一个struct然后用一个vector存储,而不是用drop_id1, drop_id2, drop_num1,drop_num2来表示,类似这样的情况是很常见的.后来工作中用Lua比较多,也曾写过一个将表导出lua的工具,对上述问题的解决方

sqlite3命令备忘录之查看表结构

Android内置了sqlite数据库,程序开发中经常使用到,已安装的程序,如何通过adb查看以创建的表结构呢? 在android下通过adb shell命令可以进入sqlite3的命令行client,见:在android命令行下使用sqlite3. 如果想列出该数据库中的所有表,可:.table 如果想查看这些表的结构:select * from sqlite_master where type="table"; 认情况下,不会出现红框中的表头,需要之前设置,命令为:.header

JFinal里得到表结构的方法总结

JFinal里得到表结构的方法总结: 1.得到已经配置的Model类的表结构.(推荐用法).如下,定义一个User的Model类,这样就可以得到Model类的表结构了.具体实现不明白,请高手指导. public void tableMappingTest(){  Table table = TableMapping.me().getTable(User.me.getClass());    renderText(table.getColumnTypeMap().toString());   }

PowerDesigner生成数据库表和逆向生成表结构(MySQL数据库)

一.Download Connector/ODBC下载ODBC驱动,地址:https://dev.mysql.com/downloads/connector/odbc/, 需要注意:PowerDesigner安装的多少位就下载多少位的,一般是32位,建议下载.msi文件直接安装. 二.安装完成后点击powerdesigner的Database--->Configure Connections...--->添加数据源配置,如下图: 三.PDM模型生成数据库sql文件,点击powerdesigne

【SQL 代码】SQL复制数据表及表结构

select * into 目标表名 from 源表名 insert into 目标表名(fld1, fld2) select fld1, 5 from 源表名 以上两句都是将'源表'的数据插入到'目标表',但两句又有区别的: 第一句(select into from)要求目标表不存在,因为在插入时会自动创建. 第二句(insert into select from)要求目标表存在,由于目标表已经存在,所以我们除了插入源表的字段外,还可以插入常量,如例中的:5. 示例 目前有数据如下: 现在要将

使用powerdesinger逆向生成表结构

(1).使powerdesigner建立和数据库的链接 (2)配置链接详情 (3) (4) (5)更新表结构 (6) (7) 附加:当有时候会报错时: 解决方式: (1.1)更改所连接的数据库 (1.2)

SQL表结构

--sql server 2005 -- 1. 表结构信息查询 -- ======================================================================== -- 表结构信息查询 -- 邹建 2005.08(引用请保留此信息) -- ======================================================================== SELECT TableName=CASE WHEN C.co

利用flask-sqlacodegen快速导入ORM表结构

利用flask-sqlacodegen快速导入ORM表结构 友情提示:如果是使用pymysql请预先pip install 哦~ 这是window下使用virtualenv环境下执行的 Linux用户可能使用起来不太一样 (env) d:\MyProject>flask-sqlacodegen --outfile models.py --flask mysql +pymysql://mysqlusername:[email protected]/dbname 几个有用的链接 https://py

mariadb 实用功能3   修改表结构显示进度

在工作中需要修改一个表结构不知道进度,苦苦的等待也是很煎熬的事情. mariadb 贴心的小功能,让人眼前一亮,产生了临时表,还有进度可以看, good,good. 直接操作,看结果 MariaDB [test]> select version(); +-----------------+ | version()       | +-----------------+ | 10.1.20-MariaDB | +-----------------+ 1 row in set (0.00 sec)