Lua表实现数组和数组遍历

--所有的复杂类型都是table表
--声明
a = {1,2,3,4}
--类型可以不一样
b = {1,2,"123",true,nil}
c = {1,nil,3}
--lua的索引从1开始 跟C#不一样
--井号获取数组长度 nil空会被忽略
--如果表中有nil 那遇到nil就停止遍历了
for i=1,#a do
	print(a[i])
end
print("**********")
for i=1,#b do
	print(b[i])
end
print("**********")
print(#c)
print("**********")
print(a[1])
print(b[1])
print("**********")

--二维数组
a = {
   
   {1,2,3},{4,5,6}}
for i=1,#a do
	b = a[i]
	for j=1,#b do
		print(b[j])
	end
end
print("**********")
--自定义索引 平常不用
d = {[0]=1,2,3,[-1] = 4,5}
print(d[0])

--迭代器遍历
--#长度不准确 所以用迭代器遍历
--ipairs还是从1开始 只能找连续索引的 如果中间断了也无法遍历后面内容
print("**********")
for i,k in ipairs(d) do
	print("ipairs遍历"..i.."_"..k)
end
--常用的 能找到所有的
for k,v in pairs(d) do
	print(k,v)
end

猜你喜欢

转载自blog.csdn.net/holens01/article/details/133269162