1
new double[5][6] は 5行6列
double[][] array = new double[5][6]; と書くと、5個の行があり、各行に6個の値を入れられる表が作られます。
表の「行」と「列」を、添字で指定して取り出す
int[][] data = {
{31, 21, 11},
{12, 13, 14}
};
// data[行][列] の順番で指定する
println(data[0][0]); // 31
println(data[1][2]); // 14
| 外側の添字 | 中に入っている配列 |
|---|
data[0] の中に {31, 21, 11}、data[1] の中に {12, 13, 14} が入っています。
data[0][0]
31
new double[5][6] は 5行6列double[][] array = new double[5][6]; と書くと、5個の行があり、各行に6個の値を入れられる表が作られます。
1行目は [0]、2行目は [1] です。列も同じで、左から [0], [1], [2] と数えます。
length で回数を決めるdata.length は行数、data[i].length は i行目の列数です。二重ループで全要素を順番に扱えます。
int[][] scores = {
{1, 2, 3},
{5, 6, 7},
{8, 9, 0}
};
for (int j = 0; j < 3; j++) {
for (int i = 0; i < scores.length; i++) {
println(i + ", " + j + ", " + scores[i][j]);
}
}
int[][] person = {
{21, 186, 75},
{22, 175, 50},
{19, 190, 80},
{22, 168, 57}
};
int[] average = new int[3];
for (int i = 0; i < average.length; i++) {
average[i] = 0;
for (int j = 0; j < person.length; j++) {
average[i] += person[j][i];
}
average[i] /= person.length;
}
println("年齢の平均:" + average[0]);
println("身長の平均:" + average[1]);
println("体重の平均:" + average[2]);
person[j][i]
j人目の i番目の値を取り出します。列ごとの平均を作る時の中心です。