Lua的值和类型
值和类型很多一般用到的有:数值、字符串、布尔等类型。
Lua声明变量不需要去指定类型
Table
table = 数组+映射
例子:a = {10,20,"hello word"}
Lua函数
function add(a,b)
return a+b
end
function 表示声明函数
end表示结束
Lua表达式
就如同数学的加减表达式
a=a+1 // 不支持a++
function foo()
local a = 1
end
lcal 用来表示a的作用域,表示a的作用域只在这个函数内
Lua的if和while
if 判断条件 then
成立执行的语句
else
不成立执行的语句
end
if 条件 then
执行语句
elseif then
执行语句
elseif then
执行语句
.........
end
while
local i = 0
while i<10 do
print(i)
i = i+1
end
for遍历
for i =0,10,1 do
print(i)
end
其中i=0是初值,10是终值,1是循环的执行条件(如java的i++,-1就如同java的i--)
for泛型遍历
a={["a"] = 10,[10] = true,[1]=20}
for k,v in pairts(a) do
print(k,v)
end
pairts 遍历全部
ipairts 遍历其中的数值
Lua包
foo.lua:
local class ={}
function class.foo(a,b)
return a+b
end
creturn class
test.lua:-----在test中调用foo.lua中的foo方法
local c = require("f00") //必须在同一目录下
print(c.foo(1,2))
require -- 加载文件并运行,只执行一次
dofile -- 加载文件并运行,调用多少次执行多少次
Lua系统库
table:
插入:table.insert(t,i)
删除:table.remove(i);
等等.....
t.a = nil//删除
print(#t)//#获取t的长度
print(type(t))//type获取t的类型
tonumber("2.3")//转换成数值
tostring(3.14)//转换成字符串