--nil
--Lua中特殊的类型,他只有一个值:nil,一个全局变量没有被赋值以前默认值为nil,给全局变量负nil可以删除该变量。
print(i)
i = nil
--booleans
--两个取值false和true。但要注意Lua中所有的值都可以作为条件。在控制结构的条件中除了false和nil为假,
--其他值都为真。所以Lua认为0和空串都是真。
--numbers
--表示实数,Lua中没有整数。用实数代替整数不会有什么误差(除非数字大于100,000,000,000,000)。Lua的numbers可以处理任何长整数不用担心误差。
--strings
--字符串类型,Lua中字符串是不可以修改的,你可以创建一个新的变量存放你要的字符串
local a = "hello lua"
local b = string.gsub(a,"hello","hi")
print(a)
print(b)
--可以使用单引号或者双引号表示字符串
a = "a line"
b = 'another line'
--lua同样支持转义字符
--\a bell
--\b back space -- 后退
--\f form feed -- 换页
--\n newline -- 换行
--\r carriage return -- 回车
--\t horizontal tab -- 制表
--\v vertical tab
--\\ backslash -- "\"
--\" double quote -- 双引号
--\' single quote -- 单引号
--还可以使用[[...]]表示字符串。这种形式的字符串可以包含多行,也可以嵌套且不会解释转义序列,
--如果第一个字符是换行符会被自动忽略掉。
local code = [[
\b back space -- 后退
\f form feed -- 换页
\n newline -- 换行
]]
print(code)
--运行时,Lua会自动在string和numbers之间自动进行类型转换,当一个字符串使用算术操作符时,
--string就会被转成数字。
print("10" + 1) --> 11
--当Lua期望一个string而碰到数字时,会将数字转成string。..是字符串连接符,将字符串连接起来,当连接俩个数字
--的时候,注意数字后边要有空格
print(10 .. 20) --> 1020
--如果需要显式将string转成数字可以使用函数tonumber(),如果string不是正确的数字该函数将返回nil。
--反之,可以调用tostring()将数字转成字符串,这种转换一直有效
print(1+tonumber(2)) -->3
print(tostring(100)) -->100
--function
--函数是第一类值(和其他变量相同),意味着函数可以存储在变量中,可以作为函数的参数,也可以作为函数的返回值。
--Userdata and Threads
--userdata就是用户数据类型,指的是自己定义的类型,userdata在Lua中除了赋值和相等比较外没有预定义的操作
--thread代表线程
--table表 比较重要 以上三个数据类型在其他博客说明
--变量的作用域
--全局变量不需要声明,给一个变量赋值后即创建了这个全局变量,访问一个没有初始化的全局变量也不会出错,
--只不过得到的结果是:nil.
print(i) -->nil
--声明一个局部变量使用local 局部变量只在局部代码块中有效,比如在循环中,if语句中,do end代码块中
--我们应该尽可能的使用局部变量
local j = 1
do
local k = 1
end
print(k) -->nil
--标示符
--字母(letter)或者下划线开头的字母、下划线、数字序列.最好不要使用下划线加大写字母的标示符,因为Lua的保留字也是这样的。
--注意:Lua是大小写敏感的.
--注释:单行注释:--
--多行注释:--[[ --]]
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有