您的位置:首页 > 移动开发 > Cocos引擎

cocos2d-x 快速熟悉Lua基本细节问题

2013-04-18 14:40 323 查看
猴子原创,欢迎转载。转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢!
原文地址: http://www.cocos2dev.com/?p=416

一、程序块的写法:a = 1
b = a*2

a = 1;
b = a*2;

a= 1; b = a*2

a = 1 b = a*2
这四个程序块都是等价的。
二、Lua 变量区分大小,~= 是 不等于
三、注释符号--[[
这里是多行注释符号
这里是多行注释符号
]]
print("Sunny") -- 两个连接符就是单行注释符号

注意:多行注释符号一般这样写:--[[
print("Sunny") --已经被注释了
--]]


优点:假如你想把注释去掉,直接在开头注释符号前面加一个连接符就可以了。(多行注释符号被改成了单行)---[[
print("Sunny") --没有注释
--]]

四、全局变量不用声明,赋值就可以了,不用的时候赋值nil,未赋值的全局变量为nil
五、boolean,只有false和nil是假,其他值都是真(包括0和空字符串)
六、number ,表示双精度浮点数,Lua没有整数类型
七、string,可以赋值为任意二进制数据1、注意Lua的字符串是不可变的值,不能像c++那样修改字符串里的字符,需要修改的话请创建一个新的字符创。a = "hello world" --也可以是单引号,注意统一风格就可以了
b = string.gsub(a,"world","sunny")
print(a) --输出 hello world
print(b) --输出 hello sunny

2、在字符串上面进行算术操作,lua会将字符串转化成数字print("1" + 1) --输出 2
print("a" + 1) --错误:a string value

3、tonumber(),字符串转数字print(tonumber("123")) --输出数字 123
print(tonumber("a123")) --输出 nil

3、tostring(),数字转字符串(也可以使用连接符,123 .. "" )print(type(tostring(123))) --输出 string
print(type(123 .. "")) --输出 string

4、#,长度操作符,获取字符串长度a = "sunny"
print(#a) --输出 5

八、table,一种关联数组,也就是一种有索引方式的数组,索引值可以是整数、字符串或其他类型。(nil不可以作为table索引值)a = {} --创建table,将table的引用存到a
a["x"] = 1 --增加一个新条目 "x":1
b = "y"
a[b] = 2 --增加一个新条目 "y":2

c = a --c和a引用了同一个table

print(a["x"]) --输出 1
print(a["y"]) --输出 2
print(c["x"]) --输出 1
print(c["y"]) --输出 2
print(c.y) --输出 2

注意:c.y 等价与 c["y"],但是不同于c[y]
常用技巧:a = {}
for i = 1,9 do
a[i] = i
end

for i = 0,#a do --#a 返回a的最后索引值
print(a[i]) --利用#输出所有行
end

print(a[#a]) --输出最后一个值

a[#a] = nil --删除最后一个值

a[#a+1] = 10 --添加一个值到最后
注意:不推荐使用索引0为起始索引,大多数内建函数都假设数组索引开始于1,所以为0的索引数组可能会出现错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Cocos2d-x 脚本 Lua