|
1、mac下安装lua
(1)brew install lua
(2) 源码安装 make macosx install
2、lua中变量区分大小写
3、lua的数据类型:number/boolean/string/function/table/userdata/thread/nil
4、thread的值是一个可以用于异步计算的协同程序(轻量有限线程)
5、lua中局部变量是由关键字local定义的,没用local定义的变量就是全局变量,在整个程序中有效,
不论在什么地方,没有被local定义的变量就是全局变量。
6、比较好用的lua集成开发环境,luaeditor
7、lua比较运算符注意不等于是~=
8、lua关系运算符 and or not ..
9、lua中and与其他语言不同的情况
print(1<2 and 12);第一个为true,则会返回后面那个非boolean的数据
print(1>2 or 12);第一个为false,则会返回后面那个非boolean的数据
10、在lua中,所有不是false和nil的值都代表true
11、do ..... end可以在lua中定义一个语句块
12、math库,io库,table库,string库
13、lua中不定参数使用...,比如function x(...) function x(a,b,...) ,其他的参数放在arg表中
14、lua中return关键字只能出现在语句块的结尾一句,也就是说智能,end,else,until之前
15、判断语句总共有if\else\elseif\end
16、循环语句(lua也支持goto)
while 循环条件 do --直到条件为假退出循环
循环体
end
repeat ----直到条件为假退出循环
循环体
until 条件
for 变量=初始值,终止值,步长 do --终止值步长初始值都只执行一次,即使为变量或表达式,在循环体中改变,也会正常结束
循环体
end
for...in....do
17、lua中的break关键字只能在循环中使用
18、lua的表中默认的索引从1开始,中间定义了索引,默认键值会跳过这个值
19、表其实就是哈希表和数组的结合体
20、#array取得的数组个数是动态改变的,随着数组个数的改变而改变
21、table.insert(数组,键,值);table.remove(数组,键);table.sort(数组,排序规则);
22、a,b=b,a;交换两个变量值
23、lua中尾调用非常适合于递归调用
|
|