Menu
CoddyTech

グリッドの読み取り

CoddyのLuaジャーニー「Luau入門」セクションの一部。レッスン 19/80。

グリッド、ボード、行列は配列の配列であり、型も同じように入れ子になります。{{number}}は、要素が{number}配列である配列です。

local grid: {{number}} = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9},
}

local board: {{string}} = {
    {"white", "black"},
    {"black", "white"},
}

入れ子のインデックス指定では、一度に1つの階層を読み取ります。grid[2]は2行目({number})で、grid[2][1]はその行の最初の要素、つまり4です。どちらのインデックスも1始まりなので、左上の要素はgrid[0][0]ではなくgrid[1][1]です。

行が存在しない可能性がある場合は注意してください。grid[10]はnilなので、grid[10][1]は実行時エラーを発生させます。nilにインデックスを指定しようとしているためです。

challenge icon

チャレンジ

簡単

型付きグリッドから2つのセルを読み取ります。

  1. 行を{2, 4, 6}、{8, 10, 12}、{14, 16, 18}として、local gameGrid: {{number}}を宣言します。
  2. 2行目、1列目のセルを出力します:gameGrid[2][1]。
  3. 3行目、3列目のセルを出力します。

Run Codeを押すと、出力に8と18が表示されます。

自分で試してみよう

-- 1) 3行の gameGrid: {{number}} を宣言する
-- 2) 2行目の1列目、次に3行目の3列目を出力する

Luau入門のすべてのレッスン

自分で練習してみよう: Luauオンラインコンパイラ