注释:
写一个程序,总是少不了注释的。在Lua中,你可以使用单行注释和多行注释。
单行注释:连续两个减号“–”表示注释的开始,直到行末为止。
多行注释:由“–[[” 表示注释开始,并 且一直延续到“–]]”为止。
快捷方式是Ctrl+k+c Ctrl+k+u
--print("hello world")
--[[
function fact (n)
if n == 0 then
return 1
else
return n * fact(n-1)
end
end
print("enter a number:")
a = io.read() -- read a number
print(fact(a))
--]]
暂停
os.execute("pause")
标识符:
字母(letter)或者下划线开头的字母、下划线、数字序列。最好不要使用下划线加大写字母的标识符。
注意:Lua大小写敏感。
合法的标识符 非法标识符
HelloWorld and(关键字)
_983 983(纯数字)
_name hello world(特殊符号)
保留字:
Lua语言中一些赋以特定的含义,用做专门用途的字符串。以下字符为Lua保留字,不能当做标识符。
and break do else elseif end false for function if in local nil not or repeat return then true until
while
变量:
变量在使用前,必须在代码中进行声明,即创建该变量。
编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值。
Lua 变量有三种类型:全局变量、局部变量、表中的域。
Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显示声明为局部变量。
局部变量的作用域为从声明位置开始到所在语句块结束。
变量的默认值均为 nil。
基本数据类型:
Lua是动态类型语言,变量不用类型定义。(类型的检查是在运行时做的)
a=5
print(a)
Lua中定义了8个基本类型:
nil(空)、boolean、number(所有数值类型)、string、userdata、 function、thread和table
--region *.lua
--Date
--此文件由[BabeLua]插件自动生成
--print("hello world")
--关键字 function
--then end 代替C#中的大括号{}
--注释 多行注释
--[[
function fact (n)
if n == 0 then
return 1
else
return n * fact(n-1)
end
end
print("enter a number:")
a = io.read() -- read a number
print(fact(a))
--]]
--nil类型
--[[
--输出a的值
print(a)
--输出a的类型
print(type(a))
--]]
--不需要声明类型 动态检查变量类型
--不支持UTF8格式(汉字)
--boolean类型
--[[
b = ""
if (b) then
print("true")
else
print("false")
end
--]]
--number类型
--[[
a = 123
b = 1.23
c = 1.23456789
d = -123
print(type(a))
print(type(b))
print(type(c))
print(type(d))
--]]
--string字符串类型
--[[
a = "asdf"
b = 'asdf'
--自动将字符串当数字操作
print("10"+1)
print('10'+'1')
--print("a"+1)
--拼接时需要用..运算符
print("a"..1)
--转义字符
c="asdf\nghjk"
print(c)
--]]
--[[
--大小写
a= 'aaBBccDD'
print(string.upper(a