| English | 意味 |
|---|---|
| 2-D array/tuː diː əˈreɪ/ | An array structure whose elements are accessed using two indices; Java represents it using arrays whose elements refer to arrays. |
値のグリッド
- 2次元配列は、行と列のグリッドに値を格納します。
- 2つの括弧で宣言します:
int[][] grid = new int[3][4];(3行、4列)。 - または初期化子:
int[][] g = {{1, 2}, {3, 4}, {5, 6}};(3 行 × 2 )。 - スプレッドシート、ゲーム盤、ピクセル画像をイメージしてください。
行 followed by 列
- 2つのインデックスで要素にアクセスします:
grid[row][col]。 grid[0][0]は左上です;grid[1][2]は行1、列2です。- 行が先で、次に列 — 逆にしてしまうことがよくあります。
- 両方のインデックスはJavaのすべての配列と同様に
0から始まります。
行と列のカウント
grid.lengthは行数です。grid[0].lengthは列数(1行分の長さ)です。- 長方形のグリッドでは、各行の列数が等しい必要があります。
- これら2つの長さを用いて、グリッド全体のループを境界指定します。
確認すべき2つの境界
- 有効な要素は、
grid[r][c]において0 <= r < grid.lengthと0 <= c < grid[0].lengthの範囲内にあるものです。 - どちらか一方のインデックスが範囲外になると、ArrayIndexOutOfBoundsExceptionが発生します。
- 行と列を間違えると、誤ったセルを静かに読み込む(またはクラッシュする)ことがあります。
- 毎回
[row][col]の順序を必ず確認してください。
これはgrid[row][col] — 行が先で、次に列 — で、2つの長さは異なります。 grid.lengthは行数をカウントし、grid[0].lengthは列数をカウントします。インデックスを交換すると誤ったセルを読み込んだり、例外が発生したりします。ループする際は、外側のインデックスがgrid.lengthまで、内側がgrid[0].lengthまで進みます。
3×2のグリッドg = {{1, 2}, {3, 4}, {5, 6}}:
g[0][0]は1;g[2][1]は6(行2、列1)。g.lengthは3(行数);g[0].lengthは2(列数)。g[1][0]は3— 行1、列0。
2次元配列はグリッドであり、new type[rows][cols]またはネストされた初期化子で作成します。要素へのアクセスは**grid[row][col](行が先)で行います。grid.lengthは行数、grid[0].length**は列数です。両方のインデックスは0から始まり、範囲外になると例外が発生します。
grid[row][col]インデックス付け
g[2][1] = 6; g.length = 3行、g[0].length = 2列。
int[][] g = {{1,2},{3,4},{5,6}}の場合、g[2][1]は何ですか?
難易度 1/5 · 100 コイン + 今日初回完了時に小ボーナス付与
行2は{5,6}、列1は6です。
grid[row][col]において、どのインデックスが最初に来ますか?
難易度 1/5 · 100 コイン + 今日初回完了時に小ボーナス付与
行が先、次に列です。
3行4列のグリッドにおいて、grid.lengthは何になりますか?
難易度 2/5 · 140 コイン + 今日初回完了時に小ボーナス付与
grid.lengthは行数 = 3です。
3行4列のグリッドにおいて、grid[0].lengthは何になりますか?
難易度 2/5 · 140 コイン + 今日初回完了時に小ボーナス付与
grid[0].lengthは列数 = 4です。
grid.lengthは列数を示します。
難易度 1/5 · 100 コイン + 今日初回完了時に小ボーナス付与
grid.lengthは行数、grid[0].lengthは列数です。