22. 迷茫,pairs,ipairs
3.18,迷茫了,感觉没跟上 AI 的步伐。不知道现在做的是对是错了。
感觉性价比还是太低了,手写的话,不知道要多久才能做一个像样的游戏。
要不就先直接往一个游戏的方向去做,然后慢慢抽象出一个基于 love 的框架出来。
ipairs & pairs
- 把 table 当作纯数组/列表用,并且里面是用
table.insert追加元素时 -> 无脑用 ipairs - table 当作对象/字典/Map用,键是各种字符串或乱七八糟的 ID 时 -> 无脑用 pairs
lua
local myTable = {
[1] = "苹果",
[2] = "香蕉",
[4] = "葡萄", -- 注意:这里跳过了索引 3,形成了一个“空洞”
name = "水果篮子", -- 这是一个字符串键(字典元素)
type = "混合" -- 这也是一个字符串键
}
for index, value in ipairs(myTable) do
print(index, value)
end
-- 1 苹果
-- 2 香蕉
-- 严格有序,从 1 开始
-- 无视非数字键
-- 遇到 nil 就罢工,比如这里索引 3 无定义,会直接停止
for key, value in pairs(myTable) do
print(key, value)
end
-- 1 苹果
-- 2 香蕉
-- 4 葡萄
-- name 水果篮子
-- type 混合
-- 会把表里的东西全部掏出来,不管你的键是数字还是字符串
-- 可能是无序的