热更新学习笔记(二)
来源:互联网 发布:mac系统qq如何远程 编辑:程序博客网 时间:2024/06/06 07:41
热更新学习(二)之Lua语法
1. print()是Lua的内置语句
2. 在编辑器里面删除汉字的时候得按delete键或backspace键两次,因为汉子在Lua里面是占用两个字节的,所以得删除两次。
3. 在Lua中字符串用””或者’’都可以表示
4. Lua中每一条语句后面都是没有分号的
5. Lua中定义变量是不需要数据类型的,它会根据你变量的值来决定是什么类型的,比如num=100
6. 变量的命名不能以数字开头,尽量避免下划线加大写字母开头,这种格式lua自身保留
7. 推荐使用c#的命名规范
8. 注释:a.单行注释--开头b.多行注释--[[注释内容]]--
9. nil表示空数据,等同于null
10. boolean布尔类型,存储true或false
11. string字符串类型,字符串可以用双引号也可以使用单引号表示
12. number小数类型(Lua中没有整数类型)
13. table表类型
14. function方法数据类型
myTable={34,134,25,26} mytable[3],
Lua中的数组索引从1开始,没有0
我们可以使用type()来取得一个变量的类型
15. 默认定义的变量都是全局的,定义局部变量需要在前面加一个local;
在代码块中声明的局部变量,当代码运行结束的时候,这个变量就会被释放;
Temp=34
Local var=25
14.算术运算符+ - * / %(Lua中没++ --这样的)
15.关系运算符 <= < > >= == ~=
16.逻辑运算符and or not 分别表示 与 或 非(类似于C#z中的& ||!)
17.流程控制语句
A.If[condition] then
End
B.If[condition] then
Else[condition] then
End
C.If[condition] then
Elseif[condition] then 注意elseif这是一个关键字
Else
End
18. 循环结构while循环
A. while语法结构
While[condition] do
End
B.输出1到100
C.实现1加到100
D.遍历1-100中所有的奇数的和
19. 循环结构 repeat循环
Repeat
[code to execute]
Until [condition]
20.for循环结构
A. 语法结构
For index=[start],[end] do
[code to excute]
End
B.break 可以终止循环 没有continue语法
21. 函数(方法)
A. 如何定义函数
Function[function name](param1,param2)
[function code]
End
B.定义一个函数用来求得两个数字的和
Function Plus(num1,num2)
Return num1+num2
End
22. 标准库(标准函数)或称API
Lua内置提供了一些常用的函数帮助我们开发
1. 数学处理的math相关函数
2. 字符串处理的string相关函数
3. 表处理的table相关函数
4. 文件操作的io相关函数
5. 注意:可以去lua官网https://www.lua.org/manual/5.3/
去查api
23. table表
在Lua中的table类似c#中的字典,其实就是一个key-value键值对的数据结构
①table的第一种创建方式
myTable={}
表明后面使用{}赋值,表示一个空的表
②table的赋值
myTable[3]=34 当键是一个数字的时候的赋值方法
myTable[“name”]=”笔圣” 当键是一个字符串的赋值方法
myTable.name=”bisheng” 当键是一个字符串的赋值方法
③table的访问
myTable[3] 当键是数字的时候,只有这一种访问方式
myTable.name 当键是字符串的时候有两种访问方式
myTable[“name”]
④table的第二种创建方式
myTable={name=”笔圣”,age=22,isMan=true}
(表创建之后依然可以添加数据)
数据访问
myTable.name
myTable[“name”]
⑤table 的第三种访问(类似数组的使用)
myTable={34,25,46,”笔圣”}
当没有键的时候,编辑器会默认给每一个值,添加一个数字的键,该键从1开始
c#中的var只能在局部变量里面使用,但是当你赋值完之后,它的数据类型就会被确定了。
⑥表的遍历分两种
1. 如果是只有数字键,并且是连续的可以使用下面的遍历
For index=1,table.getn(myTable) do
(code to execute)
End
2. 所有的表都可以通过下面的方式遍历
For index,value in pairs(myNames) do
Print(index,value)
end
24. 通过表来实现面向对象
因为Lua里面是没有类class这个概念的,它的底层是c语言实现的,所以我们可以通过表来做面向对象
cat={} 声明对象
Local this=cat 声明this关键字表示当前对象
--定义并声明对象中的属性
cat.name=”kitty”
cat.age=0.5
--定义并声明对象中的方法
- 热更新学习笔记(二)
- Lua学习笔记-热更新(一)
- 热更新学习笔记(一)
- 热更新学习笔记(三)
- uLua热更新学习笔记
- 热修复 增量更新 学习笔记
- Cocos2d-js 热更新学习笔记
- ToLua学习笔记,增量热更新
- Springboot学习笔记(二)devtools热部署
- Unity3d热更新二
- python学习笔记(二)更新中
- [持续更新]JavaScript学习笔记(二)
- [持续更新]HTML5学习笔记(二)
- Uniyt热更新——LuaFrameWork学习(二)按钮点击事件
- 热更新Tinker研究(二):结合源码学习Dex格式
- 热更新JSPatch学习:
- Cocos2d-x 3.6版本学习笔记-热更新
- 安卓学习笔记 6-10 热更新
- method_Nesterov's Accelerated Gradient Descent
- ELK第二篇:Elasticsearch的CRUD常用REST接口
- HDOJ 2148 Score(水题)
- 想要提升移动网页的加载速度?你可以Get这些技能
- Qt小程序(二)-Qt Designer使用简单介绍
- 热更新学习笔记(二)
- Linux awk详细讲解
- sdnu 1521(堆排序应用)
- 浏览器调用桌面程序方法
- Hbase原理
- 清除行列 请编写一个算法,若N阶方阵中某个元素为0,则将其所在的行与列清零。 给定一个N阶方阵int[][](C++中为vector<vector><int>>)mat和矩阵的阶数n,请返回完成操
- IntelliJ IDEA 激活
- 机器学习之文本分类-从词频统计到神经网络(一)
- 【基础】C#:委托Action、Action<T>、Func<T>、Predicate<T>