Lua函数(function)语法与库函数 --math 表(table)

-->函数

-->1.无参无返回值

-->函数的定义

-- function Say()

-- print("lua")

-- end

-- -->函数得调用

-- Say()

--->也可以把函数赋值

-- var =function ()

-- print("lua")

-- end

-- var()

-->2.无参有返回值

-- var =function ()

-- return "lua"

-- end

-- print (var())

-->3.有参无返回值

-- var =function (arg)

-- print('hello'..arg)

-- end

-- var(" lua")

-->4.有参有返回值

-- var =function (a,b)

-- return a+b

-- end

-- print(var(1,2))

-->演示:函数作为参数传递给函数

-- function myFunc(parg)

-- parg()

-- end

-- var=function ()

-- print("函数内部执行函数")

-- end

-- myFunc(var)

-->演示2:0000000

-- function myPrint(param)

-- print("----俩个数的和为----",param)

-- end

-- function Add(num1,num2,funcParam)

-- result= num1+num2

-- funcParam(result)

-- --return result

-- end

-- Add(1,10,myPrint)

-->在lua中函数可以有多个返回值

-- function F(a,b)

-- return a+b,a-b,a*b,a/b

-- end

-- value,v2,v3,v4=F(10,10)

-- print(value)

-- print(v2)

-- print(v3)

-- print(v4)

-->lua中函数的可变的参数列表

-- function Sum( ... )

-- print("这是一个求和函数")

-- local args = {...}

-- print("总共传人"..#args.."个参数")

-- sum = args[1]+args[2]

-- print("和值为:",sum)

-- end

-- Sum(1,2)

---->练习1:比较俩个数的大小,返回最大的数

-- function Max(a,b)

-- -- if a>b then

-- -- print("最大值为",a)

-- -- elseif b>a then

-- -- print("最大值为",b)

-- -- end

-- return a>b and a or b

-- end

-- print(Max(1,2))

---->练习2:利用可变参数列表,使用任意一种循环求和值

-- function F( ... )

-- local args = {...}

-- sum=0

-- for i=1,#args do

-- sum=sum+args[i]

-- end

-- return sum

-- end

-- print(F(1,2,3))

---->lua 中的库函数 --math

---->向下取整

-- a=5.125

-- b=5.75

-- b=b+0.5

-- print(math.floor(a))

-- print(math.floor(b))

--->伪随机数

--print(math.random(100))

-- math.min()

-- math.max()

--math.random(math.min(),math.max())

--print(math.abs(-10)) --绝对值

--assert 和 loadstring

-- function hello()

-- print('hello World')

-- end

-- str="hello()"

-- assert(loadstring(str))()

-- a="Hello lua"

-- b="print(a)"

-- assert(loadstring(b))()

--> 数组

-- array = {"c#","unity","lua"}

-- for i=1,3 do

-- print(array[i])

-- end

--> 这里需要注意lua中的数组是从1开始的,当然你也可以

--> 自定义下标

-- array = {}

-- for i=-2,2 do

-- array[i] = i

-- end

-- for i=-2,2 do

-- print(array[i])

-- end

--> 练习1:找出数组中最大的值

-- array = {1,2,3,4,5}

-- max = 0

-- for k,v in ipairs(array) do

-- max = max < v and v or max

-- end

-- print(max)

--> 二维数组

-- array = {}

-- for i=1,3 do

-- array[i] = {}

-- for j=1,3 do

-- array[i][j] = i * j

-- end

-- end

-- for i=1,3 do

-- print(array[i][j])

-- end

-- end

--> 演示泛型迭代器

-- days = {"星期一","星期二","星期三","星期四","星期五",

-- "星期六","星期七"}

-- for index,value in pairs(days) do

-- print(index,value)

-- end

-- days = {}

-- days["key"] = "value"

-- days["key1"] = "value1"

-- days["key2"] = "value2"

-- days[1] = 2

-- days[2] = 3

-- days[3] = 4

-- for i,v in pairs(days) do

-- print(i,v)

-- end

----------> 表

gMyTable = {

["name"] = "lucy",

["age"] = 18,

["sex"] = "woman",

["name"] = "lily",

"测试",

"测试1"

}

-- gMyTable["name"] = "lucy"

-- gMyTable["age"] = 18

-- gMyTable["sex"] = "woman"

-- gMyTable[1] = "测试"

--> 遍历表

-- for k,v in ipairs(gMyTable) do

-- print(k,v)

-- end

--> 直接访问表内元素

-- print(gMyTable[1])

-- print(gMyTable["name"])

-- for k,v in pairs(gMyTable) do

-- print(k,v)

-- end

-- print(gMyTable.name)

--->定义一个表t1

t1={}

t1[1]=1

t1[2]=2

t1["key"]="修改前"

t2 = t1

t2["key"] = "修改后"

print(t2.key)  --- 修改后

print(t1.key)  --- 修改后

t2 = nil

print(t1.key)  --- 修改后

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,204评论 0 17
  • 1.1程序块:Lua执行的每段代码,例如一个源代码文件或者交互模式中输入的一行代码,都称为一个程序块 1.2注释:...
    c_xiaoqiang阅读 2,572评论 0 9
  • 不支持上传文件,所以就复制过来了。作者信息什么的都没删。对前端基本属于一窍不通,所以没有任何修改,反正用着没问题就...
    全栈在路上阅读 1,926评论 0 2
  • 亲爱的嘉嘉: 嘉嘉你好,一眨眼,有一个多月没见到你了,记得上次见到你,还是过春节的时候。你想舅舅了吗?我可是经常...
    蒋二十阅读 437评论 1 2
  • 从里约传来了个好消息,中国女排奇迹般地大爆发。在郎平的率领下,她们一路过关闯将,晋级里约奥运会女排冠军。 ...
    午后闲聊阅读 903评论 0 10