Lua基础知识学习一

Lua基础知识学习一

关于Lua的基础知识学习

1. 输出“HelloWorld”

使用print(“HelloWorld”)
一般lua语言可以不加 号结尾

2. 标识符

1.常量用全大写和下划线
2.变量的第一个字母小写
3.全局变量第一个字母用小写g表示
4.函数(方法)第一个字母大写

3. 变量

变量不需要声明类型(弱类型语言)
并且变量的类型随时可以改变

3.1 全局变量

变量虽然可以随意定义,但不建议定义不知道用法的变量

3.2 局部变量

在变量前使用local关键字之后,该变量就会变为局部变量

4.Lua 的类型

4.1 基本类型

1.空nil类型 可以销毁变量的存储空间,如果想要删除一个全局变量,为这个全局变量赋值为nil

2.boolean布尔类型

3.string字符串类型

4.number数字类型 lua中没有整数小数之分

5.table类型 表示一个集合 下标序号由1开始
实例:
tab={参数1,参数2,参数3}

tab的初始下标值为1,不是0

如果直接print(tab)
则显示的是table类型的地址值

6.function 表示lua中的函数类型(方法)

7.thread 独立线程类型(伪多线程)

4.2 判断变量类型

方法type(变量)
能够得到变量的类型

5. 字符串的操作

5.1 字符串拼接

使用 “字符串1”. .”字符串2”进行字符串的连接 中间没有空格

5.2 得到字符串的长度

1.使用方法string.len(“字符串”)
2.使用#号+字符串变量的拼接
例如
#“asgeher”、string.len(“aosbiie”)
结果都为7

5.3 把字符串全部转为大写

string.upper(参数1)
参数1:字符串

5.4 把字符串全部转为小写

string.lower(参数1)
参数1:字符串

5.5 截取指定的字符串长度

string.sub(参数1,参数2,参数3)
参数1:字符串:
参数2:截取开始点
参数3:截取长度

5.6 字符串的反转

string.reverse(参数1)
参数1:字符串
作用:把字符串的值全部反转
例如:
字符串:“abcdefg”
反转之后字符串为:“gfedcba”

5.7 字符串的格式化

string.format(参数1)
参数1:字符串
传参进该字符串,改变该字符串的值
例如
name=“xxx”
age=20
print(string.format(“我的名字叫%s,我今年%d岁了”,name,age))
显示为:我的名字叫xxx,我今年20岁了

%d 表示为 数值型变量
%s 表示为 字符串型变量

5.8 字符串的查找

5.8.1 格式1

string.find(参数1,参数2)
参数1:字符串
参数2:指定某个存在于字符串里面的字符串,查找之后并返回该字符串下标位置
例如:
num= string.find(“aoaib”,“i”)
num的值为4

5.8.2 格式2

string.find(参数1,参数2,参数3)
参数1:字符串
参数2:指定某个存在于字符串里面的字符串,查找之后并返回该字符串下标位置
参数3:指定从哪个下标为几开始查找数值
例如:
num= string.find(“aoaibsababiao”,“i”,10)
num的值为11
自动跳过第一个i字符,从下标为10开始查找

5.9字符串的替换

string.gsub(参数1,参数2,参数3)
参数1:原字符串
参数2:原字符串里的某个字符串
参数3:要替换的值

6. 关系运算法

6.1 符号

小于号:<
小于等于号:<=
大于号:>
大于等于号:>=
等于号:==
不等于号:~=

7. 逻辑运算符

7.1 符号

或:or
与:and
非:not

7.2 用法

7.2.1 or用法(或)

假使两个关系表达式进行判断,两个表达式之间使用 or 进行连接
只要一个关系表达式为真,那整个表达式就为真

7.2.2 and用法(与)

假使两个关系表达式进行判断,两个表达式之间使用 and 进行连接
两个关系表达式的值都要为真,整个表达式的值才为真

7.2.3 not用法(非)

常用于boolean类型的值中判断
在关系表达式的前面使用 not 进行连接,如果布尔值为真,则变成假,如果为假,则变成真

实例
isbool=true
print(not(isbool))

*8. 多重赋值

8.1定义

变量个数与赋值的内容个数一致 如果赋值的内容比变量多那么为nil
例如:
a1,a2,a3,a4,a5=100,200,300
如上实例
a4和a5的值为nil

9. 判断表达式

9.1 if语句

格式

if condition then
- - body
end

condition:关系表达式,要判断的内容
body:要执行的内容
end:判断语句的结束标记

9.2 else if语句

if condition then
- - body
elseif condition then
- - body
end

语义同上!!!

10. 注释

10.1 单行注释- -
10.2 多行注释- -[[]]- -

11.for 循环

11.1 结构

1.
for i = 参数1, 参数2, 参数3 do
– body
end

参数1:起始值
参数2:最大值
参数3:步长(循环一次所需值)
*do:充当C#里面的花括号起始值
end:for循环的结束标记
2.
for 参数1, 参数2 in ipairs(参数3) do
- -body
end
参数1:键值
参数2 :表的值
参数3:表,相当于集合,数组
*do:充当C#里面的花括号起始值
end:for循环的结束标记

11.2 跳出循环

11.2.1 break

满足条件,跳出整个循环

11.2.2 return

满足条件,跳出整个循环

没有 continue lua语言不使用continue作为跳出循环的关键字,而且该关键字也没有

12. repeat循环(while循环)

12. 1 repeat

repeat
- -body
until 判断表达式
判断表达式:必须要满足判断表达式的条件才能结束循环
body:要执行的内容

while 判断表达式 do
- -body
end
判断表达式:跟普通的for循环一样,只要限制住一定的范围,就可以进行循环
body:要执行的内容

13.函数

必须要使用 function 关键字进行定义的方法,才为方法

猜你喜欢

转载自blog.csdn.net/qq_46005796/article/details/115627718