0

データベースのデータカテゴリのデータ値をテーブルにロードして、さらに処理しようとしています。各データカテゴリは、独自のテーブルを取得することになっています。残念ながら、データカテゴリの数は一貫しておらず、DBごとに異なるため、現在のデータカテゴリの量に応じてテーブルを自動的に作成することを考えました。

--categories is a table containing the names of all data categories
for a = 1, #categories, 1 do 
temptable..a = {}; 
end

Luaはテーブルをその値ではなく変数に割り当てようとするため、これはもちろん機能しません。この方法では、変数の連結もできません。Luaにテーブルを自動的に作成させる方法はありますか?

4

1 に答える 1

5

Luaではテーブルにテーブルを含めることができるので、単純にそのようにしないのはなぜですか?

例えば

cat = {'cat1','cat2','cat3'}

temptable = {}
for i,v in pairs(cat) do
temptable[v] = {1+ i,2 + i,3 + i}
end

あなたに誘惑を含むテーブルを与えるだろう

[cat2] => table
    (
       [1] => 3
       [2] => 4
       [3] => 5
    )
[cat1] => table
    (
       [1] => 2
       [2] => 3
       [3] => 4
    )
[cat3] => table
    (
       [1] => 4
       [2] => 5
       [3] => 6
    )

を使用してアクセスできます

for i,v in pairs(temptable.cat1) do
print(i,v)
end
于 2012-05-31T07:31:57.760 に答える