スポンサードリンク

【Java】2次元配列のデータをfor構文で出力する

2次元配列の全てのデータを出力する場合、一つ一つ下のように出力してもプログラム的には問題ないです。

System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[0][2]);


しかし時間的労力的に考えて非現実的です。この場合、for構文を2つ用いればとても簡単に2次元配列のデータを全て出力できます。

1.for構文の中にfor構文を入れる

2次元配列で例示したジャニーズの5人組ユニット(SMAP、TOKIO、嵐)のメンバーが代入された以下の2次元配列から、全ての名前を取り出してみたいと思います。

String[][] menber = new String[][]{
{"中居正広", "木村拓哉", "稲垣吾郎", "草彅剛", "香取慎吾"},
{"城島茂", "国分太一", "長瀬智也", "松岡昌宏", "山口達也"},
{"大野智", "二宮和也", "相葉雅紀", "松本潤", "櫻井翔"}
};

では、「Lesson042.java」というファイルを作成し、以下のJavaプログラムを入力・保存してください。

public class Lesson042{
    public static void main(String args[]){
	//2次元配列menberを用意
	String[][] menber = new String[][]{
	    {"中居正広", "木村拓哉", "稲垣吾郎", "草彅剛", "香取慎吾"},
	    {"城島茂", "国分太一", "長瀬智也", "松岡昌宏", "山口達也"},
	    {"大野智", "二宮和也", "相葉雅紀", "松本潤", "櫻井翔"}
	};
	//for構文の中にfor構文を入れて出力
	for(int i = 0; i<menber.length; i++){
		for(int j = 0; j<menber[0].length; j++){
			System.out.println(menber[i][j]);
		}
	}
    }
}

そして以下のようにコンパイル・実行してください。

C:\Users\ysk\Desktop\java>javac Lesson042.java

C:\Users\ysk\Desktop\java>java Lesson042
中居正広
木村拓哉
稲垣吾郎
草彅剛
香取慎吾
城島茂
国分太一
長瀬智也
松岡昌宏
山口達也
大野智
二宮和也
相葉雅紀
松本潤
櫻井翔

このように、for構文の中にfor構文をいれ、繰り返し処理をすることで2次元配列のデータを全て出力できます。

2.プログラムの解説

1.lengthについて

lengthを用いれば配列(1次元配列)のデータの個数(要素数)を取得できましたが、2次元配列にも応用できます。

まず以下の2次元配列を見てください。

2次元配列の代入例

配列名.length

とすると、Y方向(縦方向)の要素数を取得できます(この場合3)。

配列名[0].length

とすると、X方向(横方向)の要素数を取得できます(この場合5)。

2.forについて

外側のfor構文は2次元配列の縦方向(Y方向)を担当し、内側のfor構文は2次元配列の横方向(X方向)を担当しています。

そして

for(int i = 0; i<menber.length; i++)

の「i<menber.length」で縦方向の繰り返し処理回数を指定し、

for(int j = 0; j<menber[0].length; j++)

の「j<menber[0].length」で横方向の繰り返し処理回数を指定しています。

この繰り返し処理で

  • 変数iが0のとき
     変数jは0と1と2と3と4となる
  • 変数iが1のとき
     変数jは0と1と2と3と4となる
  • 変数iが2のとき
    変数jは0と1と2と3と4となる

そのため

System.out.println(menber[i][j]);

とすることで、2次元配列の全てのデータを出力できます。

コメント

1:スーパーコピー セリーヌ:2019/04/20 6:32:45

コピー時計通販専門店
人気コピー時計通販専門店

◆在庫情報随時更新!
◆お客さんたちも大好評です:
◆新品種類がそろっています。
◆品質がよい、価格が低い、実物写真!
◆経営方針: 品質を重視、納期も厳守、信用第一!
◆超格安価格で、安心、迅速、確実、にお客様の手元にお届け致します。

豊富な品揃えで最新作も随時入荷致しておりますのでごゆっくりとご覧ください。
広大な客を歓迎してご光臨!

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