JAVAの多次元配列
多次元配列とは、配列変数の要素の表現がHareitsu[0]であるのに対し、Hairetsu[0][0]と表すことができる配列変数です。
多次元配列の用途
多次元配列を使うと、ゲームで言うならばマップの配置に応用できます。
例えば、平地を0、森を1、町を2という風に決めて以下のような地図をつくった場合、以下のようになります。

これを多次元配列で管理すると、以下のようになります。

主人公の現在地がHairetsu[2][4]の場合、町に着いた、というような判定ができるようになります。
なお、この場合のHairetsuは、2次元なので、二次元配列と呼びます。
二次元配列の宣言
配列の宣言と同様に、以下のように宣言します。
int[][] Hairetsu = new int[3][5];
直接代入する場合には、以下のように書きます。
int[][] Hairetsu = { {0,0,1,1,0,1}, {1,0,1,1,0,1}, {1,0,0,0,2,1}, {1,1,1,1,1}};
以下のように書くと「1」が表示されます。
int[][] Hairetsu = { {0,0,1,1,0,1}, {1,0,1,1,0,1}, {1,0,0,0,2,1}, {1,1,1,1,1}};
System.out.println ( Hairetsu[0][1] );
なお、上記の表現のとおり、多次元配列はJAVAの場合、正しくは「一次元配列の中の各要素に、一次元配列が格納されている」形になっています。
そのため、要素数を確認するには以下のように書きます。
Hairetsu.length; // 最初の配列の要素数
Hairetsu[0].length; // 2次元目の配列の要素数
実際にコードを書くと以下のようになります。
int[][] Hairetsu = { {0,0,1,1,0,1}, {1,0,1,1,0,1}, {1,0,0,0,2,1}, {1,1,1,1,1}};
System.out.println ( Hairetsu.length );
上記のコードでは「4」と表示されます。
int[][] Hairetsu = { {0,0,1,1,0,1}, {1,0,1,1,0,1}, {1,0,0,0,2,1}, {1,1,1,1,1}};
System.out.println ( Hairetsu[0].length );
上記のコードでは「6」と表示されます。
関連記事
JAVAの条件分岐:switch文
if文と並ぶ条件分岐の構文として、もう一つ、switch文があります。 if文が条件が真偽で処理を変える2択(elseifを付ければ複数の選択肢を持たすことができるが)であるのに対し、switch文は…続きを読む
JAVAの条件分岐:if文
条件分岐とは、ある条件を提示して、その条件に合致していたらA、合致していなければBを実行する、という構文で、プログラミングには欠かせないものです。 条件分岐には以下の種類があります。 if文 swit…続きを読む
Eclipseで分離したウィンドウを元に戻す
Eclipseを使って、ウィンドウを分離する場合には、分離したいウィンドウのバーをクリックして、アプリケーション外に移動します。 分離したウィンドウを結合する 分離したウィンドウを元に戻すには、「ウィ…続きを読む
JAVAのループ処理:do~while文
JAVAのループ文には、while文というものがあります。 while文は、条件式に合致している間、処理を続けるというものです。while文は、まず条件を判定して、その後に処理を行います。 これに対し…続きを読む
JAVAのパッケージ
パッケージとはクラスのさらに上の概念です。 あるパッケージに属するクラスは、同じ名称であっても別のパッケージのクラスとは別物として扱われます。 「aaa」パッケージの「cde」というクラスと、 「bb…続きを読む
Eclipseを使ってJAVAで”Hello World”を表示する
統合開発環境(IDE)であるEclipseを使ってJAVAプログラミングを練習していきます。第一弾は、基本中の基本である、「Hello World」を表示する、というものです。 Eclipseの使い方…続きを読む
JAVAでクラスを生成する
JAVAでは、一つのソースファイル(.javaファイル)ごとに最低でも1つのpublicクラスが必要になります。 publicクラスは、1つのソースファイルに1つしか設定できません。 publicでな…続きを読む
JAVAの配列変数の宣言
配列変数とは、変数を1つのグループとして使う方法です。 変数名は同じだけれど、[1]、[2]、[3]…とその変数の要素を設定できます。 JAVAでは配列変数を以下のように表します。 int[] Hai…続きを読む
JAVAの予約語
プログラム言語で予め使われている名前、たとえば変数の型を示す名前などは、変数名やクラス名として宣言することができません。これらの名前を予約語といいます。 予約語一覧 abstract(修飾子) ass…続きを読む
JAVAのエスケープシーケンス
例えば、以下のように、ダブルクォーテーションを出力したい場合には、どのように書けばいいでしょうか。 System.out.println(“””); 上のように書い…続きを読む