Lua语法要点2

Lua语法要点2数组

一、Lua函数ide

  function 能够添加 local 关键字。添加后为局部函数,不添加(默认)为全局函数。return 能够返回多个返回值,以, 分隔。函数

  使用 ... 来表示变长参数。lua

function add(...)  
local s = 0  
  for i, v in ipairs{...} do   --> {...} 表示一个由全部变长参数构成的数组  
    s = s + v  
  end  
  return s  
end  
print(add(3,4,5,6,7))  --->25

  经过 select("#",...) 来获取可变参数的数量:spa

function average(...)
   result = 0
   local arg={...}
   for i,v in ipairs(arg) do
      result = result + v
   end
   print("总共传入 " .. select("#",...) .. " 个数")
   return result/select("#",...)
end

print("平均值为",average(10,5,3,4,5,6))
  • select(n, …) 用于访问 n 到 select('#',…) 的参数
do  
    function foo(...)  
        for i = 1, select('#', ...) do  -->获取参数总数
            local arg = select(i, ...); -->读取参数
            print("arg", arg);  
        end  
    end  
  
    foo(1, 2, 3, 4);  
end

二、for循环code

  var 从 exp1 变化到 exp2,每次变化以 exp3 为步长递增 var,并执行一次 "执行体"。exp3 是可选的,若是不指定,默认为1。blog

for var=exp1,exp2,exp3 do  
    <执行体>  
end  

  for的三个表达式在循环开始前一次性求值,之后再也不进行求值。好比上面的f(x)只会在循环开始前执行一次,其结果用在后面的循环中。ip

#!/usr/local/bin/lua  
function f(x)  
    print("function")  
    return x*2   
end  
for i=1,f(5) do print(i)  
end
function
1
2
3
4
5
6
7
8
9
10
View Code

三、运算符。io

  ^ 是指数运算符,如 10^2 = 100。for循环

  ~= 是不等于运算符,同C++中的 !=。

  逻辑运算符所有采用英文单词来表示。

  

  其余运算符
  

四、

五、

六、

七、

八、

九、

相关文章
相关标签/搜索