写在前~本人刚学习运用lua语言制作Roblox游戏不久,对lua在游戏创作中的运用有了一丢丢的认识,所以想要写一些文章记录自己的学习内容并和大家分享一起进步。如有不妥的地方欢迎各位大佬斧正!!!
目录
#什么是lua
lua是一种轻量小巧的脚本语言,最早是由巴西里约热内卢天主教大学里的一个研究小组于 1993 年开发的。其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。(简而言之lua被发明出来的是为了更简单方便的开发程序功能)
#lua的特点
1、轻量化:编译后占内存极小(大概一百多k)
2、可扩展:lua可以使用c或c++(通常是这些宿主语言)提供的各种功能。
3、具有面向过程编程和函数式编程
#基础知识
##注释(用来解释说明)
单行注释
两个减号是单行注释
--注释内容
多行注释
--[[
注释内容
注释内容
--]]
##标识符(用来给变量取名字)
标识符相当于每一个人的名字都是独一无二的。lua中给各种数据取名字的规则如下:
由大、小写字母、下划线、数字组成,并且不能以数字开头。
注意:
1、lua中区分字母的大小写。
2、你取的名字不要与lua自带的标识符重名。
##lua中的变量(可以改变的量)
1、变量在使用前,需要在代码中进行声明,即创建该变量。
2、编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值。
3、Lua 变量有三种类型:全局变量、局部变量、表中的域。
4、Lua 中的变量都是全局变量,哪怕是语句块或是函数里,除非用 local 显式声明为局部变量。
5、局部变量的作用域为从声明位置开始到所在语句块结束。
6、变量的默认值均为 nil。
根据经验应该尽可能的使用局部变量,有两个好处:
- 1. 避免命名冲突。
- 2. 访问局部变量的速度比全局变量更快。
##数据类型
在lua中变量不要类型定义,只需要为变量赋值。
Lua 中有 8 个基本类型分别为:nil、boolean、number、string、userdata、function、thread 和 table。
以下是他们的详细介绍:
##运算符(类比数学中的加减乘除)
运算符是一个十分特殊的符号,它的作用是告诉解释器执行特定的数学或逻辑运算。Lua提供了以下几种运算符类型:
- 算术运算符
- 关系运算符
- 逻辑运算符
- 其他运算符
### 算术运算符
下面的表格列出了 Lua 语言中的常用算术运算符,设定 A 的值为1,B 的值为 2
###关系运算符
下表列出了 Lua 语言中的常用关系运算符,设定 A 的值为1,B 的值为 2
###逻辑运算符
下表列出了 Lua 语言中的常用逻辑运算符,设定 A 的值为 true,B 的值为 false
###其他运算符
下表列出了 Lua 语言中的连接运算符与计算表或字符串长度的运算符
##循环语句
下表给出了lua中的循环
##判断语句
下表给出了lua中的判断
##函数
Lua 中的函数主要有两种用途:
- 1.完成指定的任务
- 2.计算并返回值
Lua函数可以返回多个结果值