Lua语言定义变量不需要声明类型,一句话结尾不需要分号
Lua的语言可以通过type(内容)来返回内容的类型

print("Hello World!") 输出一句  Hello World!

Lua中注释为--    多注释为--[[aaaa]]

Lua中变量不声明访问会得到nil(空),删除一个变量只需要将其赋值为空

Lua中的if会将nil值判断为false

Lua中的字符串可以用""来代表,而且也能用[[ asd ]]来圈上一大串字符来代表一大串字符串

Lua中将字符串与数字进行计算时,会尝试自动将字符串转换为数字

Lua当中字符串与字符串之间连接使用的并不是+,而是 .. 两个点
例如: print("Hello " .. "World!")

判断字符串长度的时候可以将#加在字符串前面    例如: print(#"123456") 会得到 6

Lua中的数组类型为table,table能够当作数组用,也能当作链表用,也能当作字典用
table的用法相对于其他两个更相似与字典
Lua中的索引不同于C#,Lua索引的第一个是从1开始的
使用方法为直接赋值大括号
table1 = { key1 = "val1", key2 = "val2", "val3" }
同一个table当中可以同时保存各种不同类型的变量
Lua中的数组能直接定义名字,访问只需要  .   来访问
例如: table1.key1  能返回 "val1"
从table中取出数值的方式也是使用索引,例如table[2]
table2 = {}  创建一个空表
即使是已经声明好的表,也能后期修改他的大小内容,如同list,而且也可以向字典一样使用
字典的用法就是不规定键名键值,赋值任意两个配对的值,访问key就能够得到value,key当作索引使用
例如:

table2[100] = 22;
 table2["key"] = "value";

function 函数  写法:

function factorial1(n)
 retrun n
 end

在Lua中没有大括号开启方法,但是也有名称后面添加 () 确定这是方法
方法开始在function的下一句,执行到下一个没有用到的end为止
以上方法中 n 为方法的参数

Lua当中可以直接将方法赋值给变量,例如 abc = factorial1   之后可以调用abc(10)

Lua中function的参数可以是另一个function,而传入的第二个funtion可以是匿名函数
匿名函数就是不声明名字直接写入逻辑和参数返回值的函数,例如:

function1(10,
 function(a,b)
 return a.."="..b
 end
 )

:::::::::::::::重要的点:::::::::::::::::::::
判断一个值是否等于nil的时候不能写成type(value)== nil
而是需要写成type(value)=="nil"
::::::::::::::::::::::::::::::::::::::::