命名规范
1.脚本的后缀名是 .lua
2.单行注释 --
3.多行注释--[[ ]]--
4.print 是lua 内置的方法
5.字符串可以用双引号表示也可以用单引号表示
6.行末没有分号
print(“Hello World”)
命名规范:
1.不需要定义类型
2.变量名不能以数字开头
3.避免下划线和大写字母开头(这种额是Lua自身保留)
4.驼峰命名法
5.字符串连接使用的是 .. print("a"..'b') #tab
6.#在获取表的长度时,根据的是表的最大索引的值
5.Lua 中的table类型索引从1开始 不是固定大小的可以变化 自动删除
Lua中的数据类型 :
nil : 1. 表示一个无效值
2.对于全局变量和 table,nil 还有一个"删除"作用,给全局变量或者 table 表里的变量赋一个 nil 值,等同于把它们删掉
number:小数类型,lua中没有整型 双精度的实浮点数
string:由一对双引号或单引号来表示
boolean : 1.false 和true
2.alse 和 nil 看作是"假",其他的都为"真":
function : 1.函数 也是一种数据类型 函数可以存在变量里
table类型 :其实是一个"关联数组",数组的索引可以是数字或者是字符串。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。
1.字典
student={id="100",name="xiaoming",age=22}
for i,v in pairs(student) do
print(i .." "..v)
end
2.数组
student={1,2,3,6}
for i,v in pairs(student) do
print(i.." "..v)
end
7.全局变量和局部变量
全局变量 默认的都是变量都是全局变量
局部变量 前加local 当代码运行结束后会被释放
小红 ,16 ,女,Snail
name ="小红"
age=16
sex =true
school='Snail'
myTable={12,35,55,33,99,'刚才写的都是数字',key1-1000}
myTable[1]=1000 --修改
运算符
1.算数运算符
+ - * /
没有++ 、--
2.关系运算符
< <= > >= == ~=(!=)
3.逻辑运算符
and 、or 、not 分别代表与、或、非相当于C# 中&&、 || 、!
条件结构
if +条件+then
else 不加then
end
循环结构
分为:while循环 for循环 repeat..until循环 嵌套循环
while 语法
while(condition)
do
statements
end
for 循环
分为:数值for循环,泛型for循环
数值for循环
for var=exp1,exp2,exp3 do
<执行体>
end
var从exp1变化到exp2,每次变化以exp3为步长递增var,并执行一次"执行体"。exp3是可选的,如果不指定,默认为1。
泛型for循环
泛型for循环通过一个迭代器函数来遍历所有值,ipairs是数组迭代器 pairs是字典迭代器
--打印数组a的所有值
for i,v in ipairs(a)
do print(v)
end