配列とは
配列の生成
配列の生成にはnewを使います。
※生成時にデフォルトで初期値が設定される。
デフォルトで設定される初期値
整数・小数 = 0
文字 = 空文字(‘ ‘)
真偽地 = false
書き方
データ型[ ]配列名 = new データ型[要素数];
例: int[]a = new int[5];
データ型[ ]配列名 = new データ型[要素数];
例: int[]a = new int[5];
以下のプログラムは配列変数aに5つの配列を作って、格納された数値から合計値と平均値を表示するプログラム
package test;
public class Sample {
public static void main(String[] args) {
int[] a = new int[5];
int sum,avg; // 合計値、平均値を入れる変数
// 値を代入
a[0] = 1;
a[1] = 10;
a[2] = 5;
a[3] = 2;
a[4] = 3;
// 合計値
sum = 0.0;
//配列の要素数を取得して合計値を表示
for(int i = 0; i < a.length; i++){
System.out.print(a[i] + " ");
sum += a[i];
}
System.out.println();
avg = sum / 5.0;
System.out.println("合計値:" + sum);
System.out.println("平均値:" + avg);
}
}
配列名.lengthと記述すると配列の要素数を取得することができます。
配列の初期化
書き方
データ型 配列名[ ] = {値1,値2,値3,値4,値5}
例:int number[] = {1,2,3,4,5};
データ型 配列名[ ] = {値1,値2,値3,値4,値5}
例:int number[] = {1,2,3,4,5};
package test;
public class Sample {
public static void main(String[] args) {
int number[] = { 1,2,3,4,5 };
String letter[] = {"Hello","World","!" };
int i;
// 整数型配列変数number表示
for(i = 0; i < number.length; i++){
System.out.print(number[i]+" ");
}
System.out.println();
// 文字列型配列変数letterの表示
for(i = 0; i < letter.length; i++){
System.out.print(letter[i]+" ");
}
System.out.println();
}
}
多次元配列
配列の配列をつくる
マンションで例えるなら2階建て3部屋のイメージ
多次元配列の生成
package test;
public class Sample {
public static void main(String[] args){
//2行3列の多次元配列の生成
int[][] points = new int[2][3];
//データの代入
points[0][0] = 50;
points[0][1] = 60;
points[0][2] = 70;
points[1][0] = 75;
points[1][1] = 85;
points[1][2] = 95;
//配列の中身の表示
System.out.println(points[0][0] + "点");
System.out.println(points[0][1] + "点");
System.out.println(points[0][2] + "点");
System.out.println(points[1][0] + "点");
System.out.println(points[1][1] + "点");
System.out.println(points[1][2] + "点");
System.out.println("points.length:" + points.length);
System.out.println("points[0].length:" + points[0].length);
System.out.println("points[1].length:" + points[1].length);
}
}
抽出結果
50点
60点
70点
75点
85点
95点
points.length:2
points[0].length:3
points[1].length:3
多次元配列の初期化
int[][] points = {{50,60,70}{75.85.95}};
コード量が少なくてすみますね。
package test;
public class Sample {
public static void main(String[] args){
// 多次元配列の初期化
int[][] points = { {50, 60, 70}, {75, 85, 95} };
//配列の中身の表示
System.out.println(points[0][0] + "点");
System.out.println(points[0][1] + "点");
System.out.println(points[0][2] + "点");
System.out.println(points[1][0] + "点");
System.out.println(points[1][1] + "点");
System.out.println(points[1][2] + "点");
System.out.println("points.length:" + points.length);
System.out.println("points[0].length:" + points[0].length);
System.out.println("points[1].length:" + points[1].length);
}
}
コメント