スポンサードリンク

【Java】3次元配列とは?

これまで1次元配列と2次元配列を学習しましたが、3次元配列もあります。というか、4次元配列、5次元配列もあります。

ここでは、3次元配列について説明します。

1.3次元配列とは?

3次元配列とは、その名のとおり3次元(X、Y、Z方向)にデータの広がりがある配列です。

1次元配列は横方向(X方向)にデータの広がりがあります。

配列

また、2次元配列は縦方向(Y方向)と横方向(X方向)にデータの広がりがあります。

2次元配列

そして3次元配列は、縦方向(Y方向)と横方向(X方向)と奥方向(Z方向)にデータの広がりがあります。

3次元配列

2.3次元配列を分解してみる

3次元配列を分解してみます。

勘の良い方はお気づきかもしれませんが、3次元配列というのは、2次元配列がZ方向に連なったようなもので、特にややこしいものではありません。

以下の画像では、Z方向に3つの2次元配列があります。

3次元配列の分解

3.3次元配列の宣言方法

3次元配列の宣言とデータの代入を同時に行う場合

データ型[][][] 配列名 = new データ型名[][][]{
{
{○, ○, ○, ○, ○},
{△, △, △, △, △},
{□, □, □, □, □}
},
{
{○, ○, ○, ○, ○},
{△, △, △, △, △},
{□, □, □, □, □}
},
{
{○, ○, ○, ○, ○},
{△, △, △, △, △},
{□, □, □, □, □}
},



}

[][][]」の部分に注意が必要です。あとはZ方向の数だけ二次元配列みたいなデータを「,(カンマ)」で区切って入力するだけです。

なお、上で二次元配列のデータに色付けしていますが、Z方向に関して、一番手前の二次元配列,一個奥の二次元配列,さらに一個奥の二次元配列・・・のようにデータを並べていきます。

先に3次元配列を宣言して後からデータを代入する場合

データ型[][][] 配列名 = new データ型名[Z方向の長さ][Y方向の長さ][X方向の長さ]

ここで注意したいのが[Z方向の長さ][Y方向の長さ][X方向の長さ]で、先にZ方向、次にY方向、最後にX方向の順番になります。

4.3次元配列のデータの取り出し

3次元配列のデータの取り出しは何も難しくなく、一番上から2番目の画像を参考にして頭の中でイメージすれば、どんなデータだって取り出せます。

例えば以下です。

配列名[1][2][4]

こうすれば、Z方向2番目の一番右した「1-2-4」のデータが取り出せます。

5.3次元配列へデータを代入する

まず最初に3次元配列の宣言をします。

String[][][] member = new String[2][2][4];

これはString型の配列で、Z方向に3つ、Y方向に3つ、X方向に5つデータの代入ができます。

ではZ方向は1、Y方向は0、X方向は4のところに文字列「私は1-0-4の場所にいる!」を代入してみます。

String[1][0][4] = "私は1-0-4の場所にいる!";

このような要領で3次元配列にも後からデータを代入できます。

コメント

まだコメントはありません。

コメントフォーム
お名前
コメント