Lua学习笔记-table

--建立一个有数据的table
mytable2 = {
	1,
	2,
	3,
	4,
	5,
	"ok",
	config = {1,2,3},
	8
}
--[[
	1.Lua中table的索引不是0,而是1
	2.table的访问方法跟在其它语言中使用的方式很像
]]

for i=1,#mytable2 do --#mytable2表示获取table的长度
	print(mytable2[i])
end--[[
	1
	2
	3
	4
	5
	ok
	8
]]

s = "ok"
mytable = {
	1,
	2,
	k = 12,
	6,
	config = {},
	7
}

mytable[s] = 10

print(mytable[s])	--10
print(mytable["k"])	--12

print(mytable[k])	--nil

print(mytable.k)	--12  
--在Lua中mytable.k等价于mytable["k"]
--a.x a[x]易混淆,a.x等价于a["x"], a[x],以变量x的值来索引table


--第一种table的遍历方式
for i=1,#mytable do
	print("value is "..mytable[i])
end

--第二种table的遍历方式,跟第一种获取的值是一样的,根据隐式索引来迭代显示值
for i,v in ipairs(mytable) do
	print(i,v)
end

--第三种table的遍历方式 pairs迭代器是完全将所有的值显示出来,并且table中索引并不是完全按照书写顺序来的
for k,v in pairs(mytable) do
	print(k,v)
end


转载于:https://my.oschina.net/hejunsen/blog/264657

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值