亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

lua基礎知識筆記

標簽:
Cocos2d-x

一、lua中的数据类型
1、数值

a = 1
b = 1.2

2、字符串

c = "hello world"

3、布尔

d = true
f = false

4、表(Table) = 数组+映射
4.1、数组

a = {}
a[1] = 10
a[2] = "hello"
a[3] = true

--or

a = {10, "hello", true}

4.2、映射

a = {}
a["hello"] = 1
a[3] = false

--or

a = {
    ["hello"] = 1,
    [3] = false
}

二、函数
单返回值示例:

function add(a, b)
    local c = 1
    return a + b + c
end

其中的 c 只在函数内部有效

多返回值示例:

function addTwo(a, b)
        c = 1
    return a + b, a - b
end
--调用
a, b = addTwo(1, 2)

其中的 c 全局有效(应尽量避免这种写法)

三、表达式
and、or、not、..用法示例:

a = true and false
b = true or false
c = not true
d = "a".."b"

四、if语句
格式为:

if 表达式 then
    代码块一
elseif 表达式 then
    代码块二
else
    代友块三
end

五、while语句
格式为:

while 表达式 do
    循环体
end

六、for语句
1、循环

for i = 10, 1, -1 do
    print(i)
end

2、遍历

a = {
    ['foo'] = 1,
    [100] = true
}
for k, v in pairs(a) do
    print(k, v)
end

其中pairs()为迭代器,类似的还有 ipairs() 迭代器,ipairs()只迭代Table中的数组部分

七、包(package)
示例:
foo.lua文件:

local class = {}

function class.foo(a, b) 
    return a + b
end

return class

调用这个包:

local c = require("foo")
print(c.foo(1, 2))

注:这两个文件要在同一目录下

八、系统库
1、取对象长度:#t
2、table系列方法:

table.insert(t, index)
table.remove(t, index)
table.sort
table.move
table.pack
table.uppack
table.concat

3、字符串格式化:string.format("hi %d", 2)
4、数值转为字符串:tostring(3.14)
5、字符串转数值:tonumber("3.14")
6、删除映射:

local t = {}
t.a = 1
t.b = 2
--删除t.a用
t.a = nil

7、判断对象类型:type(t)

點擊查看更多內容
45人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
全棧工程師
手記
粉絲
24
獲贊與收藏
2402

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消