lua快速入门
Lua 快速入门
可直接进行变量的赋值,类似python
a = 1
local b = 2 -- lua中默认为全局变量,如果需要赋值局部变量需要添加local前缀
未声明的变量全部为 nill
print(c) -- c = nill
可同时对多个变量赋值
a,b,c = 1,2
print(a,b,c) -- 1 2 nill
number 数值型(Lua支持16进制表示法以及科学技术法)
a = 0x11
b = 2e10
print(a,b) -- 17 20000000000.0
支持算法运算符
a = 0x11
b = 2e10
print(a^b)
print(1<<3) -- 8
String类型
a = "abcdef"
b = "abc\ndef"
c = [[
abc
def
]] -- 按照格式进行保存,包括换行
d = a..b -- 用..来连接两个字符串
e = tostring(10) -- 将数值型10转换为字符串型"10"
f = tonumber("10") -- 将字符串型"10"转换为数值型10,如果转换失败,则返回 nill
print(a,b)
print(c)
print(#a) -- 在字符串前面加一个--可返回该字符串的长度
function 函数
-- f= function(...)
function f(a,b,c)
print(a,b,c)
end
f(1,2) -- 1 2 nill lua中函数的默认返回值是 nill,并且可设置多个返回值
table 结构
a = {1,"ac",{},fuction() end}
a[5] = 123 -- lua中的下标是从1开始计数的而非0
table.insert(a,2,"d") -- 在a中的第二位添加"d"
local s = table.remove(a,2) -- 删除a中第二位的元素,并返回该元素赋值给s
table 字符串类型
a = {
a = 1,
b = "1234",
c = function()
end,
d = 123123,
[",;"] = 123 --如果不符合变量命名规范可以用这种办法命名
}
a["abc"] = "abcdef"
print(a.a) -- print(a["a"])
print(a[",;"])
全局表 _G
a = 1
print(_G["a"]) -- lua中所有全局变量都放在全局表_G中
真和假
a = true
b = false
a = nill -- lua中只有nill和false代表假
b = 0 -- lua中0不代表假
print(a and b) -- nill
print(a or b) -- 0
print(not a) -- true
print(1 > 2)
print(1 < 2)
print(1 >= 2)
print(1 <= 2)
print(1 == 2)
print(1 ~= 2)
分支判断语句
if 1>10 then
print("1>10")
elseif 1<10 then
print("1<10")
else
print("no")
end
循环
for循环
for i=10,1,-1 do --此处的i无法在循环体内进行修改
print(i)
if i == 5 then break end
end
while循环
loacl n = 10
while n > 1 do
n = n - 1 -- lua中不支持自减操作(n--)
end