- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Lua基础语法2
* * * * * * * * * * * * * * * Data Industry Research Lab. 秦皇岛数据产业研究院 目录 表的构造 语句 函数 实例程序 表的构造 table是Lua中唯一的一个数据结构,(自定义数据类型)通过table,我们能扩展出其他的数据结构,比如:数组,类。 构造器是创建和初始化表的表达式。最简单的构造函数是{ },用来创建一个空表。 如 a = { } 初始化表的方式 类似列表(list)的初始化 a = {“1”,“2”,“3”} 类似字典(record)的初始化 a = {x=1,y=2,z=3}; -- a = {}; a.x=1; a.y=2; a.z=3 -- a = {}; a[“x”]=1; a[“y”]=2; a[“z”]=3 混合型 就是将上面两种混在一起 。 polyline = { test, color=blue, thickness = 2, npoints=4, {x=0,y=0}, {x=-10,y=0}, {x=-10,y=1}, } 注意: 可以把这个类型看作数组; 可以用任意类型来做数组索引,除了nil; 所有元素之间,总是用”,”隔开; 所有索引值都需要用”[”和”]”括起来;如果是 字符串还可以去掉引号和中括号; 在构造函数的最后的“,”是可选的,可以方便 以后的扩展。 如果不写索引,则索引就会被认为是数字, 并按顺序自动从1往后编排。 不管用何种方式创建table,我们都可以向表中添加或者删除任何类型的域,构造函数仅仅影响表的初始化。 w = {1, 2, 3} w[4] = 4 w[3] = nil for i,v in ipairs(w) do print(i,v) end 语句 赋值语句 “=” 流程控制语句 if语句 for语句 while语句 repeat-until语句 break和return语句 赋值语句 赋值是改变一个变量的值和改变表域的最基本的方法。 如:a = “hello” .. “world” t.n = t.n + 1 例: a = {x = 1, y = 2, z = 3} a.x = a.x + 1 print(a.x) 赋值语句在Lua中被强化了,它可以同时给多个变量赋值。变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量。 例如:a,b,c,d = 1,2,3 甚至是: a,b = b,a --交换变量 多值赋值经常用来交换变量,或将函数调用返回给变量: a = 1; b = 2 --交换两个数 a, b = b, a print(a,b) if语句 if ( 条件判断 ) then end 为true则执行 if (条件判断) then else end 为true则执行 为false则执行 if (条件判断) then elseif (条件判断) then end 为true则执行 为true则执行 a = 1, b = 2 if (a == b) then print(“OK”) else print(“false”) end While语句 while ( 条件判断 ) do end 为true则执行 先判断后执行 repeat-until语句: repeat 语句; until (条件判断); 先执行后判断 for语句 for语句有两大类: 第一,数值for循环:exp3可以省略默认为1 for var=exp1,exp2,exp3 do loop-part end for将用exp3作为step从exp
文档评论(0)