我有阵列:
racers = {}
racers[6] = {plCP = 4, plID= 21}
如果我的值为plID = 21,有没有办法返回赛车手的索引? (在这种情况下,我想返回6。)
我尝试构建反向索引,但我真的只能在表中获取索引。这就是我现在正在尝试的事情:
local index={}
for i = 1,5 do
for k,v in pairs(racers[i]) do
index[v]=k
end
end
当我传递值21时返回“plID”,但我希望它返回6。
答案 0 :(得分:1)
对于列表中的每个赛车,请检查plID是否等于您要查找的ID。
local racers = {}
racers[1] = {plCP = 4, plID= 21}
racers[2] = {plCP = 2, plID= 4}
racers[3] = {plCP = 6, plID= 5}
racers[4] = {plCP = 222, plID= 7}
racers[5] = {plCP = 6, plID= 12}
function getRacerIndexById(racerList, id)
for index, racer in ipairs(racerList) do
if racer.plID == id then
return index
end
end
end
print(getRacerIndexById(racers, 12))
答案 1 :(得分:0)
想出来。
Conversion failed when converting the varchar value '2000CityB' to data type int.
这将返回5,这是我正在寻找的赛车手的索引。