45

lua でテーブルのキー セットを取得する方法を知る必要があります。たとえば、次のテーブルがあるとします。

tab = {}
tab[1]='a'
tab[2]='b'
tab[5]='e'

次のようなテーブルを取得したい:

keyset = {1,2,5}
4

2 に答える 2

50
local keyset={}
local n=0

for k,v in pairs(tab) do
  n=n+1
  keyset[n]=k
end

での順序は保証できないことに注意してくださいkeyset。キーを並べ替えたい場合は、 で並べ替えkeysetますtable.sort(keyset)

于 2012-10-01T13:35:28.457 に答える