网站设计目的,国学大师网站是哪里做的,华为物联网开发平台,qq wordpress登陆地址开发工具 1.SciTE #xff08;入门级#xff09; IDEA lua #xff08;商业级#xff09; 基础
注释
--单行注释
a hello --a是一个标识符号--多行注释
--[[这是多行注释]]--连接符
-- ..
str 123..456变量 变量类型可以随意改变 数字开头会报错 五种基本…开发工具 1.SciTE 入门级 IDEA lua 商业级 基础
注释
--单行注释
a hello --a是一个标识符号--多行注释
--[[这是多行注释]]--连接符
-- ..
str 123..456变量 变量类型可以随意改变 数字开头会报错 五种基本变量类型
nil --表示空数据boolean --布尔类型string --字符串类型可以双引号也可可以单引号number --小数类型lua中没有整数类型table --表示一个集合下表序号从1开始function --有lua编写的函数userdata --表示任意存储在变量中的C数据类型thread --表示执行的独立线程字符串
--多行字符串
str [[123456789
]]--字符串连接
str 123
printf(str ..str)--字符串的转换
printf(2.2 30) --输出 32.2--求字符串长度
printf(#str) --字符串与其他类型的转换
str1 888
num tonumber(str)--数值转字符串
str tostring(num) --table类型不能自动转换需要强制加上tostring(arry)三大运算符
--算术运算符- * / % ^(次幂)--关系运算符~(不等于)--逻辑运算符
and(与) or或 not非
1.false、nil 视为假
2.and 返回第一个为假的操作数有假为假
3.or 返回第一个为真的操作数有真为真多重赋值
num1,num2,num3 1,2,3
print(num1,num2,num3)全局与局部变量 lua变量默认都是全局的定义局部变量需要用local来修饰 if 和 for 中定义的变量默认全局 删除一个全局变量只需要给变量赋值nil 其他
str1 nil --作用销毁str1所占用得资源流程控制语句
if
--单分支
if() then
end--双分支
if() then
else
end--多分支
if() then
elseif () then
else
endwhile
i 1
while(i100) doprint(i)i i1
endrepeat 相当于 do-while j 1repeatprint(j)j j1
until(j10)for
--单次循环
for i 1, 10 doprint(循环次数:..i)
end--使用循环步长
for i 10, 1, -2 doprint(循环次数..i)
end--泛型 for 循环使用迭代器关键字
myarry{10,20,30,40,50,60}for k, v in ipairs(myarry) doprint(k,v)
end--定义循环输出具备“键值对”集合的数据必须使用pairs关键字
myarry2{num1张三, num2李四, num3王五}for k, v in pairs(myarry2) doprint(k,v)
end函数 1.无需定义返回类型可以返回任意类型 2.无需定义参数类型 3.可以定义变量把函数直接赋值给它从而获得相同的功能 --定义一个函数
function funName(num,num2)print(我是一个函数输入参数为..num,num2)return num num2
end--调用函数
ret funName(100,200)
print(函数返回值为..ret)函数作为参数
--回调函数
function fun(ret)print(函数输出..ret)
end--主调函数
function fun1(num1,num2,fun)ret1 num1-num2fun(ret1)
end--调用
fun1(100,50,fun)匿名函数 无需定义函数名称但是要把函数赋值给变量 字符串
字符串表示
str 1234
str 1234
str [[1234]]输出字符串长度
..string.len(str)..#str转义字符
回车 \r
换行 \n
反斜杠 \\
双引号 字符串常用函数
str fjlsfj23--字符串大小写转换
print(string.upper(str))
print(string.lower(str))--字符串查找
findpos1 string.find(str, j)
findpos2 string.find(str, j,5) --5表示从下表5开始搜索
print(findpos1)
print(findpos2)--字符串截取
strSubresult string.sub(hello world,1,3) --从1开始截取三个字符--字符串替换
strGsubResult string.gsub(hello world,l,z) --将l替换成z--字符串反转
strReverseResult string.reverse(hello world) --逆序--格式化字符串
num1,num2,num3 10,20,30
num4 num1 num2 num3
strResult string.format(num1:%dnum2:%dnum3:%d result:%d,num1,num2,num3,num4)
print(strResult)表 是一种数据结构用来创建不容的数据类型 lua数组的下标可以式负数 lua数组的长度可以动态改变 --定义一个表
table1 {11,22,33,44}--输出
print(table1)
print(table1[1])
print(table1[2])
print(table1[3])--使用table函数或符号输出
for i1,table.getn(tableArray) doprint(tableArray[i])
end表函数
--得到表的长度
table.getn()--表的链接
table.concat()--表的插入
table.insert()--表的删除
table.remove()表的排序
--升序排序
table.sort()--得到表中最大值
table.maxn()