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