[Lua快速了解一下]Lua的Table

Lua中的Table其实就是一个Key Value的structure

haoel = {name="ChenHao", age=37, handsome=True}

-table的CRUD操作

haoel.website="https://coolshell.cn/"
local age = haoel.age
haoel.handsome = false
haoel.name=nil

看上去像c++的struct,但是其实name, age, handsome, website都是key

还可以这样定义Table

t = {[20]=100, ['name']="ChenHao", [3.14]="PI"}

可以这样访问t[20],t[“name”], t[3.14]

再比如数组

arr = {10,20,30,40,50}

实际等价于

arr = {[1]=10, [2]=20, [3]=30, [4]=40, [5]=50}

也可以定义成不同类型的数组

arr = {"string", 100, "haoel", function() print("coolshell.cn") end}

其中的这个函数可以这么调用arr[4]()

*注意:Lua的下标不是从0开始的,而是从1开始的

for i=1, #arr do
    print(arr[i])
end

上面#arr的意思就是arr的长度

-Lua把所有的全局变量放到了一个叫做_G的table里

可以用如下的方法访问一个名为globalVar的全局变量

_G.globalVar
_G["globalVar"]

-iterate一个table

for k, v in pairs(t) do
    print(k, v)
end

 

posted @ 2018-03-20 00:36  马大欧  阅读(330)  评论(0编辑  收藏  举报