
lua
文章平均质量分 83
易勇2017
易勇
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
lua 面向对象
-- lua 面向对象--封装1r = {area = 0,length = 0,breadth = 0}function r:new(length,breadth) self.length = length or 0 self.breadth = breadth or 0 self.area = self.length * self.breadth return selfend原创 2017-12-10 12:03:42 · 221 阅读 · 0 评论 -
lua 中字符串的相关方法
表示方式str1 = "可以用双引号表示"str2 = '可以用单引号表示'str3 = [[ 可以用双中括号来输出一串字符块 ]]print(str1)print(str2)print(str3)--[[输出结果:可以用双引号表示可以用单引号表示 可以用双中括号来输出一串字符块 ]]转义字符:用于表示不能直接显示的字符string.u原创 2017-12-01 22:03:07 · 4695 阅读 · 0 评论 -
lua中 迭代器
无状态迭代器--无状态的迭代器是指不保留任何状态的迭代器,因此在循环中我们可以利用无状态迭代器避免创建闭包花费额外的代价function test(max,index) if(index<max) then index = index +1 return index,index+index endendfor i,n in test,5,0 do -- 循环开始时,5传给原创 2017-12-04 21:19:01 · 267 阅读 · 0 评论 -
lua中 table
arr1 = {"hello","lua","world"}print("arr1 是第二个元素是: " .. arr1[2]) --luaarr2 = arr1print("arr2 是第二个元素是: " .. arr2[2]) --luaarr2[2] = "java"print("arr1 是第二个元素是: " .. arr1[2]) --java (arr1 与 arr2原创 2017-12-04 21:54:06 · 221 阅读 · 0 评论 -
lua 模块
-- 文件名为 test2.lua--模块类似于一个封装库:可以把一些公用的代码放在一个文件里--以API接口的形式在其他地方调用,有利于代码的重用及降低代码耦合度--lua模块是由变量、函数等元素组成的table,实质上就是一个table--以下是创建一个模块的样例:mod = {} --创建了一个空的tablemod.name = "易勇" --加入常量name到模块中m原创 2017-12-05 20:02:43 · 294 阅读 · 0 评论 -
lua 元表
--在 lua 里面我们知道两个数字可以通过 + 来计算和,两个字符串可以通过 .. 来拼接到一起--这是因为底层有相应的封装在完成对应的操作,元表其实就是一种自定义封装来完成table之间的操作--元表本身其实就是一个table,所以可以把任何一个table设置为其他table的元表--getmetatable(table):返回对象的元表--setmetatable(table,me原创 2017-12-08 16:32:11 · 206 阅读 · 0 评论 -
lua coroutine 协同程序
-- lua coroutine 协同程序,与多线程不同的是:同一时间内只有一个协同程序在运行,只有显式调用yield函数后才被挂起-- 传统函数是从函数的第一行执行到最后一行截止,而coroutine可以将函数分成多次来执行:-- 先执行第1、2、3行,然后挂起去干点别的事,再执行第4、5、6行,然后再挂起处理其他事-- 再执行第7、9、行......直到整个函数执行完毕。-- cor原创 2017-12-09 17:03:56 · 284 阅读 · 0 评论 -
lua I/O
--打开文件的操作语句: file = io.open(filename [,mode]) 其中mode的取值有以下几种:--file = io.open(filename,"r") r:以只读方式打开文件,该文件必须存在(默认)--file = io.open(filename,"w") w:打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件--fi原创 2017-12-09 20:26:06 · 405 阅读 · 0 评论 -
lua 错误处理
-- lua 错误处理方法:--assert(param,msg) 可用在调式程序时查找错误。function add(a,b) assert(type(a) == "number","a is not number") assert(type(b) ~= "number","b is not number")end--add(a,2) --这里执行后会输出 lua: test6.lu原创 2017-12-10 10:26:37 · 700 阅读 · 0 评论 -
lua 学习总结
下载安装IDE(http://static.runoob.com/download/LuaForWindows_v5.1.4-46.exe)第一个Lua程序: HelloWorld.lua打开LuaIDE(SciTE),在编辑框中输入print("hello world") 并保存,注单,这里必须保存为*.lua的格式。按F5就可以编译支行*.lua的文件了,在控制台可以查看输出内容原创 2017-11-30 20:14:39 · 415 阅读 · 0 评论