随笔分类 - Lua 语法
摘要:时间相关 -- 系统时间 print(os.time()) -- 自己传入参数 得到时间 print(os.time({year =2014,month=8,day=14})) --os.date("*t") local nowTime=os.date("*t") for k,v in pairs(
阅读全文
摘要:封装 -- 面向对象 类 其实都是基于 table来实现 -- 元表相关的知识点 Object = {} Object.id=12 function Object:Test() print(self.id) end -- 冒号 是会自动将调用这个函数的对象 作为第一个参数传入的写法 -- 在Obje
阅读全文
摘要:元表概念 -- 任何 表变量 都可以作为另一个表变量的元表 -- 任何 表变量 都可以有自己的元表(继承(浅拷贝)) -- 当我们子表中进行一些特定操作时 -- 会执行元表中的内容 设置元表 设置元表的公共方法 setmetatable(被设置的表,元表) getmetatable 得到元表,判断是
阅读全文
摘要:协程的创建 lua 协程的类型是 thread(线程) 协程的本质是一个线程对象 关键字:coroutine.create -- 创建协程 fun = function () print(123) end --第一种协程创建方式 co = coroutine.create(fun) --协程的本质是
阅读全文
摘要:大G表 _G 表 是一个总表(table) 他将我们申明的所有全局的变量都存储在其中 for k,v in pairs(_G) do -- 输出当前lua脚本所有的的全局成员 print(k,v) end --本地变量 家里Local 的变量是不会存到大_G表中的
阅读全文
摘要:全局变量 与 本地(局部)变量 lua 声明变量默认是全局的 在某些时候不需要使用 全局的使用 则需要局部变量定义 全局变量是会占内存空间的 关键字 local -- 全局变量 a=1 b="洛溪" for i=1,2 do c = "白芷" end --输出值 "白芷" print(c) -- 本
阅读全文
摘要:字典 字典的本质运用 键值对 一个键对应一个值 和自定义索引表 相似 定义使用 --字典是由键值对构成 a ={["name"]="洛溪",["age"]= 14, ["1"]= 10} -- 访问单个变量 用中括号填键 来访问 print( a["name"]) print( a["1"]) pr
阅读全文
摘要:迭代器 主要是用来遍历表的 两个迭代器区别 # ipairs pairs 索引必须数字且连续 索引必须数字且连续 索引可以随意 从1开始到nil 从1开始到nil 从1开始到无其他索引 字符索引不识别 字符索引不识别 字符索引识别 关键字 ipairs -- # 得到长度 其实并不准确 一般不要用
阅读全文
摘要:复杂数据类型 Lua 所有的复杂类型都是 table(表) 数组 如何用Lua table(表) 实现数组 -- lua表中没有具体的限制 可以是数值,字符串,布尔值 a = {1,2,3,4,"洛溪",true,nil} --Lua 中默认索引 从 1 开始 0 如果没有自定义索引则为空 nil
阅读全文
摘要:函数的定义 --函数的定义 function 函数名() end a =function() end 无参数无返回值函数 function F1() print("F1函数") end -- Lua 执行 是自上往下 执行 函数不同于变量 , --执行函数时必须先定义且在执行函数上面有定义 F1()
阅读全文
摘要:while语句 num=0 -- while 条件 do.....end while num < 5 do print(num) num =num+1 end do while语句 num=0 -- repeat ....... until 条件 (注意 : 条件是结束条件) repeat prin
阅读全文
摘要:单分支 -- if 条件 then ...... end a=9 --单分支 if a>5 then print("123") end 双分支 --双分支 a=9 if a<5 then print("123") else print("321") end 多分支 -- if 条件 then ...
阅读全文
摘要:算法运算符 -- + - * / % --Lua 不支持自增自减 --没有复合运算符 += -= /= *= %= --字符串 可以进行 算数运算符操作 会自动转成number 如果不是数字大概率会报错 Lua 相等 C# + = + - = - * = * / = / % = % ^ = ^ 无
阅读全文
摘要:Lua字符串长度获取 -- # --获取字符串的长度 print("***********字符串长度************") s="aBcdEfG洛溪" --一个汉字 占3个字符长度 --一个英文 占1个字符长度 print(#s) Lua 字符串多行打印 --lua中也是支持转义字符的 pri
阅读全文
摘要:Lua简单的4种变量 number (数值类型) a=1; print(a) print(type(a)) a=1.2; print(a); print(type(a)) string (字符类型)双引号和单引号包含的都是字符串 没有char表达 a = "12312" print(a); prin
阅读全文
摘要:常用基本语法 --单行注释 print打印函数 --Lua语句 可以省略 分号 print("你好世界") print("洛溪欢迎回家") --下面注释都是一样的 用自己顺手的就行 --[[ 多行 注释 ]] --[[ 第二种 多行注释 ]]-- --[[ 第三种 多行 注释 --]] -- nil
阅读全文
摘要:环境安装 Lua For Windows Github开源安装环境 https://github.com/rjpcomputing/luaforwindows IDE(集成开发环境)选择 实际项目开发使用的IDE VSCode IDEA LuaStudio 等等 学习时使用的 Sublime Tex
阅读全文