二次元配列
●二次元配列の宣言
先ほどを一次元配列と呼ぶと、一次元配列は横に並んだ配列となります。
一次元配列=□□□□□
次に二次元配列では、縦と横を持った配列となります。概念は下の通りです。
二次元配列=
□□□□□
□□□□□
□□□□□
二次元配列の宣言と領域確保は以下のように宣言します。
宣言
データ型[][] 配列名;
データ型 配列名[][];
領域確保
配列名=new データ型[要素数][要素数];
例えば、上の二次元配列のように、縦に3つ、横に5つの箱を取りたい場合には以下のように宣言します。
int[][] hairetsu=new int [3][5];
ボックスには次のようにデータを入れたいとします。
| 1 |
2 |
3 |
4 |
5 |
| 11 |
12 |
13 |
14 |
15 |
| 21 |
22 |
23 |
24 |
25 |
以上のような配列に要素を入れるサンプルプログラムを掲載します。
class hairetsu2_1{
//メインメソッド
public static void main(String args[]){
//二次元配列の宣言と領域確保
int[][] nizigen = new int[3][5];
int i=0,j=0;
//二次元配列のデータの代入
for(i=0;i<=2;i++){
for(j=0;j<=4;j++){
nizigen[i][j]=10*i+(j+1);
}
}
//二次元に入っているデータを表示
for(i=0;i<=2;i++){
for(j=0;j<=4;j++){
System.out.println("nizigen["+i+"]["+j+"]の値:"+nizigen[i][j]);
}
}
}
}
実行結果は以下の通りです。
D:\private\java>javac hairetsu2_1.java
D:\private\java>java hairetsu2_1
nizigen[0][0]の値:1
nizigen[0][1]の値:2
nizigen[0][2]の値:3
nizigen[0][3]の値:4
nizigen[0][4]の値:5
nizigen[1][0]の値:11
nizigen[1][1]の値:12
nizigen[1][2]の値:13
nizigen[1][3]の値:14
nizigen[1][4]の値:15
nizigen[2][0]の値:21
nizigen[2][1]の値:22
nizigen[2][2]の値:23
nizigen[2][3]の値:24
nizigen[2][4]の値:25
●二次元配列に直接要素を代入
配列の宣言をして領域を確保して値を代入して・・・となると非常に手間がかかります。一括して出来る方法について紹介します。
class hairetsu2_2{
//メインメソッド
public static void main(String args[]){
//二次元配列の宣言と領域確保
int[][] nizigen = {{1,2,3,4,5},{11,12,13,14,15},{21,22,23,24,25}};
int i=0,j=0;
//二次元に入っているデータを表示
for(i=0;i<=2;i++){
for(j=0;j<=4;j++){
System.out.println("nizigen["+i+"]["+j+"]の値:"+nizigen[i][j]);
}
}
}
}
このように宣言、領域確保、代入を一括して行えます。
データ型[][] 配列名 = {{要素},{要素},・・・};
となります。
●配列の要素数を知る
配列の要素数を知るためには配列の後ろにを付けます。
この時、取得できる要素数は列の要素数だけです。
配列名(二次元配列).lengh = 列の数を取得
配列名[列番号].lengh = 列の要素数を取得
例えば、要素数が以下の場合とします。
二次元配列=
□□□□□
□□□□
□□□
サンプルプログラムは以下の通りです。
class hairetsu2_3{
//メインメソッド
public static void main(String args[]){
//二次元配列の宣言と領域確保
int[][] nigizen = {{1,2,3,4,5},{11,12,13,14},{21,22,23}};
//配列の要素数を表示
System.out.println("nigizen配列の要素数:"+nigizen.length);
System.out.println("nigizen[0]の配列の要素数:"+nigizen[0].length);
System.out.println("nigizen[1]の配列の要素数:"+nigizen[1].length);
System.out.println("nigizen[2]の配列の要素数:"+nigizen[2].length);
}
}
実行結果は以下の通りです。
D:\private\java>javac hairetsu2_3.java
D:\private\java>java hairetsu2_3
nigizen配列の要素数:3
nigizen[0]の配列の要素数:5
nigizen[1]の配列の要素数:4
nigizen[2]の配列の要素数:3
戻る
|