它可能有點混淆,但我有一個表,例如Ant
。如果表中包含具有特定值的密鑰
此表包含一堆其他(未命名)表。這些表格代表螞蟻,並擁有價值。
像這樣的:
Ant = {
{age=3,speed=10},
{age=6,speed=7}
}
我的問題是,我將如何檢查是否有螞蟻表內的未命名錶中包含特定值來age
。
因此,例如,我想檢查一下我的螞蟻是否年齡在3歲以上。
我希望我已經清楚了,並且提前致謝!
它可能有點混淆,但我有一個表,例如Ant
。如果表中包含具有特定值的密鑰
此表包含一堆其他(未命名)表。這些表格代表螞蟻,並擁有價值。
像這樣的:
Ant = {
{age=3,speed=10},
{age=6,speed=7}
}
我的問題是,我將如何檢查是否有螞蟻表內的未命名錶中包含特定值來age
。
因此,例如,我想檢查一下我的螞蟻是否年齡在3歲以上。
我希望我已經清楚了,並且提前致謝!
您可以通過表圈和檢查:
for i, v in ipairs(Ant) do
if v.age == 3 then
print(i)
end
end
它會print the index在其中你3歲的螞蟻存儲。
如果你需要檢查的age
值在每個子表,建立一個自定義的迭代器是另一種方式:
function age_iter(t)
local i = 0
return function()
i = i + 1
return t[i] and t[i].age
end
end
遍歷所有age
值將是:
for age in age_iter(Ant) do
print(age)
end
很容易修改它以檢查age
值之一是否等於3
。
好吧,如果我有一個母親的價值,並且需要改變它,該怎麼辦。所以我循環所有的螞蟻,但我只想改變其中的一個。 – hexagonest
@DoorKnob你能舉個例子嗎?解釋情況? – hjpotter92
@DoorKnob'print''print' – user3125367