Lua基础笔记

弱类型,不用定义,随时可以变类型,其中一些地方和vb,python,js有点像

分号有没有都行

nil,和null差不多

boolean,除nil和false都为true

string,单引号双引号都行

number,数字都为number不分那么细,相当于float(都是32位),没有int

table,相当于数组和集合

function,函数,方法

type()判断类型

[[]]多行字符串,一块字符

".."字符串连接,没有重载,+就是加

数字..字符串=字符串,数字+字符串(数字字符,不是报错)=数字,自动转换

tonumber()

tostring(),可以对表进行转换(得到地址),直接..会报错,

如果值可能为空时,加上tostring可以防止报错

"#string"计算string长度

没有自增自减

nil只等于自己

table,function,userdata比较引用

^次方

~=不等于

and or not,与或非,可以对非bool进行判断

and,第一个为假直接返回第一个

or,第一个为真直接返回第一个

n1,n2,n3=1,2,3,多个变量同时赋值

n1,n2,n3=1,2,n3为nil

n1,n2,n3=1,2,3,4,4没赋上

变量默认全局,局部变量加local

if,for,函数中都是全局变量

do

...

end 定义语句块

n=nil,删除n,释放资源

单分支

if() then

...

end

双分支

if() then

else

end

多分支

if() then

elseif() then

end

while循环

while()  do

end

repeat循环,do while

repeat

...

until(true/false)

for循环

for i=开始,结束,步长 do

...

end

ipairs循环,只能遍历table数组,有顺序的,for后可以只有一个,表示值

pairs可以遍历table集合(键值对),都可以用,顺序不确定,使用pairs时,for后必须有两个 ,只写一个就是序号

for k,v in ipairs() do

print(k,v)

end

lua没有continue,只有break

函数无需定义返回类型,可以返回任意类型与任意数量的数值。
函数的参数,无需定义参数类型
函数无需大括号。
可以定义变量,把函数直接赋值给它,从而获得相同功能。

function funName(paral,para2,..)
[函数体]
end

函数可以声明为局部的,加local,不同文件中不能用

多返回值时如果个数不同,效果同赋值时个数不同

函数的参数可以是函数,传函数名

可以通过赋值给变量间接使用匿名函数

一个汉字2长度

字符串中有单引号就用双引号,有双引号就用单引号

\r回车

\n换行

\\表示路径中的\

string.len()

string.upper()

string.lower()

findIndex=string.find(str,"子串",startFindIndex)

字符串从1开始算下标

string.sub(str,start,num)

string.sub(str,被替换的字符,替换的字符)

string.reverse()反转

string.format("xxx%dxxx%s",num1,num2)和c差不多

table下标可以为负数,可以动态改变

直接输出表名为地址

下标从1开始

键值对表可以使用tab[],tab.键获得值

table.getn(tab)获取表长度

table.getn(tab)和#只适用数组型表,键值对型为0

table.concat(tab,"分隔符",startIndex,endIndex)连接表内容,输出结果为字符串

table.insert(tab,index,"插入的字符")1,2之间插index为2

table.remove(tab.index),默认移除最后的

table.sort(tab)默认升序

lua没有面向对象,使用table模拟

定义表中字段

tableName.name=""

定义表中的方法

tableName.funName()=function()

end

function tableName.funName()

end

表的方法调用表自身的字段加表名,但是如果表销毁了,指向另一个变量再调用就会报错

所以声明this变量存储表,再用this代替表名

function tableName:funName()

self.name

end

可以不用声明变量存储,使用冒号声明,self指定自身,也可以使用table:funName()调用方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
luac转lua工具是用于将Lua源代码从编译过的二进制格式(.luac文件)转换为可读的文本格式(.lua文件)的工具。通常,在编写Lua代码时,我们使用文本编辑器来编写和修改代码。但有时,为了加密和保护代码的安全性,我们需要将代码编译为.luac文件,这样代码将以二进制形式存储,并且只能被luavm解释执行。然而,这种编译的代码不易于阅读和修改。 使用luac转lua工具,我们可以将.luac文件转换为易读的.lua文件。这对于理解、修改和维护代码非常有用。此工具解析.luac文件,并将其反编译为文本形式,使开发人员能够查看代码的实际内容和结构。一旦转换完成,我们就可以使用任何文本编辑器来修改代码,并将其保存为.lua文件。 通常,使用此工具的主要步骤如下: 1. 下载并安装luac转lua工具到你的计算机上。 2. 打开工具,选择要转换的.luac文件。 3. 设置目标文件名和保存位置。 4. 点击转换按钮,等待工具完成转换过程。 5. 一旦转换完成,你就可以使用任何文本编辑器打开保存的.lua文件并进行修改。 需要注意的是,由于.luac文件是编译的二进制文件,转换后的.lua文件可能不会与原始的.lua文件完全相同。某些元信息,如行号和注释,可能会丢失。此外,由于代码的解释执行也可能有所不同,因此在修改代码之前,你应该先进行适当的测试和验证。 总而言之,luac转lua工具是帮助开发人员将编译的.luac文件转换为可读的.lua源代码文件的实用工具,以方便代码的理解、修改和维护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值