Lua学习——循环、函数、表等简单用法
2013-05-21 15:07
453 查看
--[[ 时间:2013年5月20日9:32:14 作者:PhoenixCao 内容:Lua程序练习1 --]] -- 这是注释,函数转换写法 local cclog = function(...) print(string.format(...)) end -- 这里是函数声明 function Counting() -- for循环写法 等同于for index = 1, 5000,1 do for index = 1, 5000 do print(index, "+", index + 1, "=",index+(index+1)) end end function ReverseCounting() -- for循环写法 从5000到1,步长为2递减 for index = 5000, 1, -2 do print(index, "+", index + 1, "=",index+(index+1)) end end function IfFunction() -- if使用方法 myVal = 0 if (myVal < 10) and (myVal > 0) then print("test if") elseif myVal < 1000 then print("test elseif") end end function whileRepeatFunction() -- while、Repeat使用方法 myVal = 0 while myVal < 10 do -- Lua中无++写法 myVal = myVal + 1 print("test While:",myVal) end -- 同do while(); repeat print("test repeat:",myVal) myVal = myVal - 1 until myVal < 0 end -- 函数用法 function valuaFunction(myName,myAge) print("我的名字:", myName) print("我的年龄:", myAge) end -- (...)参数使用 function valuaFunction(...) if(arg.n > 0) then for index = 1, arg.n do local myString = string.format("%s%d","Argument",index,"") print(myString,arg[index]) end else print("没有参数传递过来") --local val3 = val1*val2*arg[1] --myString = string.format("%d%s%d%s%d%s%d",val1,"*",val2,"*",arg[1],"=",val3) end end -- (...)参数使用 function MultiplyFunction(val1,val2, ...) local myString if(arg.n == 0) then myString = string.format("%d%s%d%s%d",val1,"*",val2,"=",val1*val2) else local val3 = val1*val2*arg[1] myString = string.format("%d%s%d%s%d%s%d",val1,"*",val2,"*",arg[1],"=",val3) end print(myString) end -- 返回值测试 function ReturnFunction1() -- “..” local myString = "2013" .. "}" -- 多返回值测试 return myString, 18 end function ReturnFunction() local myString = "你妹返回值测试啊" -- 多返回值测试(函数作为返回值调用方法) return myString, 18, ReturnFunction1()--,MultiplyFunction(1,1,1) end function ReturnRandomFunction() local myString = "随机数生成测试:" -- 多返回值测试(函数作为返回值调用方法) r1 = math.random(1.0,9.0) r2 = math.random(1.0,9.0) r3 = math.random(1.0,9.0) r4 = math.randomseed(os.time()) return r1,r2,r3,r4 end -- 这里是函数调用 -- 测试log cclog("test") -- Counting() -- ReverseCounting() -- IfFunction() -- whileRepeatFunction() -- valuaFunction("你妹", 18) -- valuaFunction(1,2,2,2,2,2,2,2) -- valuaFunction() -- MultiplyFunction(1,2,3) -- ReturnFunction() -- print(ReturnFunction()) myString = "math.max(7,8,9,10)" assert(loadstring(myString))() print((loadstring(myString))) print(ReturnRandomFunction()) -- 承接返回值 a,b,c,d = ReturnRandomFunction() print(a,b,c,d) myTable = {2,4,6,8,10} -- 数组下标从1开始[1,5] print("myTable长度为:",#myTable) for i = 1, #myTable do print(myTable[i]) end print(myTable[0]) print(myTable) a = math.randomseed(os.time()) print(a)
相关文章推荐
- Python学习笔记(二):条件控制语句与循环语句及常用函数的用法
- 20180302JS的深入学习:函数的深入用法、函数的参数、JS内置对象、动态时钟及验证表单的练习、JS原型链的简单了解
- lua学习(三)--------lua调用c++函数和简单的错误处理
- Python学习21:Python中函数的用法,使用函数进行简单的数学运算
- sleep 函数的简单用法
- JavaScript学习笔记 6-循环、数组和函数 Loops , Arrays and Function
- python正则表达式--基本用法和函数(简单实例)
- Python简单学习(lecture3)编程、条件控制、循环语句、迭代器和生成器
- PHP学习之[第05讲]PHP5.4 循环结构、系统函数和自定义函数
- Scala学习教程笔记一之基础语法,条件控制,循环控制,函数,数组,集合
- CG学习(2)——CG的基本语法及核心函数的面向对象简单封装
- Lua 学习之------函数功能
- 学习Python数据分析随手笔记【一】numpy数组的函数简单应用
- Oracle的REGEXP_SUBSTR函数简单用法
- Java基础视频教程第03天_学习笔记之循环结构、函数
- Lua学习之--函数,变长参数,closure(闭包)及select的一些特性
- 【狂人C】学习笔记之一个简单的乘法函数的应用
- java学习-JAVA基本排序法示例,JAVA数据类型转换 ,ArrayList用法,Calendar 简单应用
- Lua学习之Lua的函数解析(待补充)
- php中preg_replace_callback函数简单用法示例