-- 数组
a = {1,2,"string",true,nil};
-- 索引从1开始,a[0] 为 nil
-- #a可以获取a的长度。nil不计算在内。
print(#a);--4
-- 遇到nil则代表结束。如:
b = {1,2,nil,"string",true,nil}
print(#b);--2
-- 二维数组同c#
-- 自定义索引(有坑)-----------------------
print("-------------------");
aa = {[0] = 1,2,3,[6] = 5,6,7 }
print(aa[0]);
print(aa[5]);
-- iparis迭代器遍历(从1开始往后遍历,如果自定义的索引和默认索引断了,遍历也就断了)
print("-------------------");
for key,value in ipairs(aa) do
print(key.."->"..value);
end
-- paris迭代器遍历(先遍历默认索引的,再遍历自定义索引的)
print("-------------------");
for key,value in pairs(aa) do
print(key.."->"..value);
End
-- 字典---------------------------
dict = {["name"] = "Groyo",["age"] = 18,["ID"] = 510723};
-- 字典的访问1---------
print(dict["name"].."_"..dict["age"].."_"..dict["ID"]);
-- 字典的访问2(这种方式下,键不能是数字)---------
print(dict.name.."_"..dict.age.."_"..dict.ID);
--新增
dict["phoneNum"] = 199;
-- 删除
dict.phoneNum = nil;
-- table的方法----------------------------
t1 = {{name = "Tom",age = 18},{name = "Jack",age = 19}};
t2 = {name = "Rose",age = 15};
t3 = {1,5,9,3,5};
-- 插入
table.insert( t1,t2);
-- 移除(参数1代表要移除的元素的索引。不写默认为最后一位)
table.remove( t1,1 );
-- 排序-- table.sort( tablename, sortfunction )
table.sort( t3 );
Lua学习笔记 复杂数据类型 table
最新推荐文章于 2025-09-03 23:37:26 发布
这篇博客介绍了Lua语言中数组的使用,包括索引、长度计算以及如何处理nil值。还探讨了自定义索引的陷阱,展示了ipairs和pairs迭代器的不同。此外,讲解了字典的访问方式以及如何添加、删除字典项。最后,讨论了table的插入、移除和排序方法。

2297

被折叠的 条评论
为什么被折叠?



