lua学习笔记4:初识lua中的表table.pdf
文本预览下载声明
在前面我们了解了lua 的开发环境和lua 中的基本数据类型和基本语法,在这里我们继续了
解lua 中的表结构。
表是好多脚本语言都具有的一种数据类型,说它是一种类型,其实更确切的应说它是一种
数据结构。
上午研究了lua 中基本数据结构和基本语法,身心疲惫啊。表table lua语言特有功能强大
的东西。研究了一下午终于了解了一点点了,在此记录以便以后查阅。
1、定义表的方式
最直接的构造器是{},用来创建空表。
例如: a={};-- 定义一个表a
2、访问表成员使用 “.”或者 “[]”运算符
a.x=0;-- 定义a表成员x 的值为0
a.y=1;-- 定义a表成员y 的值为1
a[z]=0;-- 定义a表成员z 的值为2
3、打印表数据
print(a.x,a.y,a.z);
4、表的另一种定义方式
这里我们把刚刚的程序进行修改,直接在定义表的时候就添加表成员以及成员的值。
b={x=0,y=1,[z]=2} -- 定义带元素的a表
print(b[x],b[y],b[z]); -- 打印b表
5、使用表来定义数组
c={1,2,3,4,5} --定义数组并添加5个元素
print(c[1],c[2],c[3],c[4],c[5]); c={1,2,3,4,5} --定义数组并添加5个元素
6、复制修改 表为d表来对比打印c[1]和d[1]的区别
d={1,2,3,4,5} --定义数组并添加5个元素
print(d[1],d[2],d[3],d[4],d[5]); --打印数组
7.总结4,5,6的打印结果
注意:表达式a.b等价于a[ “b”],但不等价于a[b]。
8、表项的键和值
任何类型的变量,除了nil,都可以做为表项的键。
从简单的数值、字符串到复杂的函数、表等等都可以;
同样,任何类型的变量,除了nil,都可以作为表项的值。
给一个表项的值赋nil意味着从表中删除这一项,比如令a.b=nil,则把表a 中键为 “b”的
项删除。
如果访问一个不存在的表项,其值也 nil,比如有 =a.b,但表a 中没有键为 “b”的项,
则 等于nil。
到此,我们对lua 中表table大致有了一定的了解。前路漫漫唯代码做伴。。
显示全部