lua入门之一函数

 1 --函数
 2 function max(num1,num2)
 3 if(num1>num2) then
 4 result=num1
 5 else
 6 result=num2
 7 end
 8 return result
 9 end
10 
11 --print("max(1,150)",max(1,150))
12 
13 
14 --Lua 中我们可以将函数作为参数传递给函数,如下实例:
15 
16 myprint=function(param)
17 print("这是打印函数-##",param,"##")
18 end
19 
20 function add(num1,num2,functionPrint)
21 result=num1+num2
22 functionPrint(result)
23 end
24 --myprint(10)
25 -- myprint 函数作为参数传递
26 --add(2,5,myprint)
27 
28 --多返回值
29 s,e=string.find("www.baidu.com","baidu")
30 --print(s,e)
31 
32 
33 --可变参数
34 function average( ... )
35 result=0
36 local arg ={...}
37 for i,v in ipairs(arg) do
38 --print(i,v)
39 result=result+v
40 end
41 print("一共传入"..#arg.."个参数")
42 return result/#arg
43 end
44 
45 
46 --print("平均值为",average(10,558,44,55,50))
47 
48 
49 --ipairs 和 pairs 区别
50 --ipairs 遍历key为int的
51 --pairs 支持Key为任何类型
52 
53 pairs1={"xx","we","fdtrtg"}
54 pairs2={
55 [1]="yereeswd",
56 ["xx"]="xx1",
57 ["yy"]="yy1",
58 [4]="yere"
59 }
60 
61 for i,v in ipairs(pairs2) do
62 --print(i,v)
63 --print(pairs2[i])
64 end
65 
66 for i,v in pairs(pairs2) do
67 --print(i,v)
68 --print(pairs2[i])
69 end
70 
71 --for找不到下标就是nil
72 for i=0,2 do
73 print(pairs2[i])
74 end

 

posted @ 2017-09-20 14:43  淡墨&青衫  阅读(251)  评论(0编辑  收藏  举报