16354人加入学习
(66人评价)
Lua编程
价格 免费

多行注释用

--[[   比--[[

--]]          ]]

好因为只要在第一段多打一个-,这样被注释掉的东西就可以用了。

---[[

--]]   

[展开全文]
黄黄黄黄 · 2020-09-18 · 该任务已被删除 0

lua 数据类型

 

nil 空类型,表示一个无效的值

boolean true/false

number 数字类型(int+double)

string 字符串类型

function 函数

userdata 用户数据类型,表示存储在变量中的C数据类型

thread 协程(异步执行,与线程不同)

table 表类型,关联数组,通过构造表达式。可以实现类

 

type(变量) 返回变量的类型

 

 

[展开全文]
jiko · 2020-09-12 · 该任务已被删除 0

lua 和 c# 编程的区别

lua轻量小巧,直接写

c#:

class A{

          public static void main(string[] args){

}

}

[展开全文]
jiko · 2020-09-12 · 该任务已被删除 0

全局变量

默认总是全局的,不需要声明

nil == null

删除变量   a = nil

 

 

[展开全文]
jiko · 2020-09-12 · 该任务已被删除 0

标识符

规则:

  1. 字母 下划线开头,后面可以是字母 数字 下划线 不允许其他字符
  2. 大小写区分

不推荐下划线+大写字母(保留字格式,lua内部全局变量)

 

 

 

 

 

 

[展开全文]
jiko · 2020-09-12 · 该任务已被删除 0

适当笔记 多写代码

print("")打印函数,输出字符串

行间不强制需要加分号

注释:

--

单行注释

--[[

--]]

多行注释

取消注释

---[[

--]]

 

 

[展开全文]
jiko · 2020-09-12 · 该任务已被删除 0

Lua函数的声明

使用关键字function

function fact(n)

    if n == 1 then

        return n

    else

        return n*fact(n-1)

    end

end

print(fact(2))

print(fact(5))

fact2 = fact

print(fact2(5))

[展开全文]
CML12315 · 2020-07-25 · 该任务已被删除 1

Lua变量不建议使用_加大写字母

严格区分大小写

Root 和 root是两个不同的变量

 

[展开全文]
CML12315 · 2020-07-25 · 该任务已被删除 1

for(int i=0,i<10,i++)

[展开全文]
1594567910 · 2020-07-03 · 该任务已被删除 0

lua中的变量是可以随时变化类型的

local是局部变量关键字

[展开全文]
onegaming · 2020-07-03 · 该任务已被删除 0

使用vs code来配置开发环境,比这个scite好用

[展开全文]
过气AI · 2020-05-24 · 该任务已被删除 0

thread

userdata

[展开全文]
学习账号 · 2020-04-06 · 该任务已被删除 0

当通过冒号调用的时候,系统会自动传递当前的table給self;

当通过点来调用方法的时候,self不会子哦对那个复制,我们必须通过第一个参数来传递当前的table

[展开全文]
艾润Irene · 2020-04-03 · 该任务已被删除 0

coroutine.status()    获取一个协同程序的运行状态,需要传入你要获取的协同程序,返回值是一个字符串

协同程序只能执行一次(执行完成之后就会处于死亡(dead)状态)

如果使用coroutine.create()创建的协同程序

第二次启动的时候不会报错,但是也不会再次执行

如果使用coroutine.wrap()创建的协同程序

第二次调用的时候会报错提示这个协同程序已经处于死亡(dead)状态

coroutine.running()   获取一个正在运行的协同程序,返回值是一个协同程序的线程号(一般只有把这个方法写到你要获取的那个协同程序里面才能获取成功)

如果一个协同程序有参数,中间有暂停,当你在暂停之后再次启动这个协同的程序的时候可以不用传参数,只需要传这个协同程序(他会使用上次启动时所传的参数执行),如果你传递参数这个参数会作为上次coroutone.yield()的参数

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

协同程序的返回值会返回协同程序执行的结果(true和false)

如果有其他返回值,后面的返回值才是你所返回的返回信息

如果想在协同程序暂停的时候返回信息,可以在coroutine.yield()的括号里面写上要返回的信息

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

co = coroutine.wrap(

function()

end

)

定义一个co协同程序

co()

启动co协同程序(这种创建协同程序的启动方法和调用普通的function一样,但是不能暂停)

co = coroutine.create(

function()

coroutine.yield()

end

)

定义一个co协同程序

coroutine.resume(co)

启动co协同程序(执行到coroutine.yield()的时候会停止运行)

coroutine.resume(co)

继续启动co协同程序(从coroutine.yield()开始继续往下执行,如果有参数继续执行的时候可以不传参数)

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

co = coroutune.create(

function()

end

)

定义一个协同程序co

coroutine.resume(co,协同里面function里面的参数(没有参数可以不写))

启动协同函数(不启动,不会执行)

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

table.sort(mytable)   把mytable表中的元素进行排序(按照ASCII值进行排序)

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

table.concat(mytable)    把mytable表中的所有内容拼接成一个字符串

table.concat(mytable,",")     把mytable表中的所有内容用 , 拼接成一个字符串

table.concat(mytable,",",2,4)  把mytable表中从2到4中的所有内容用 , 拼接成一个字符串

table.insert(mytable,"java")   在mytable中最后一个元素插入java

table.insert(mytable,2,"java")    在mytable中的第2个位置中插入java(并且自动把后面元素的索引值自动加1)

table.remove(mytable,2)  把mytable中的最后一个元素删除

table.remove(mytable,2)     把mytable中的第2个位置中的元素删除(并且自动把后面元素的索引值自动减1)

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

string.upper()     字母转换为大写

string.lower()      字母转换为小写

string.gsub(str,"s","1",2)    替换 

把str中的s替换为1,替换次数为2

str   要替换的字符串

s     要换掉的内容

1     要换成的内容

2     要替换的次数

 string find(str,"name",4)   查找

查找str中的name从第四个位置开始

str 要查找的字符串

name 要查找的内容

4   查找的起始位置

string.reverse()   字符串翻转

string.format()     字符串格式化

%d    代表整数数字

%s     代表字符串

[展开全文]
简若 · 2020-03-31 · 该任务已被删除 0

授课教师

SiKi学院老师

课程特色

图文(1)
下载资料(1)
视频(64)