ここでは 配列の length を中心に学ぶ、初心者向けの練習問題集(全10問) を紹介します。
全問に 解答と解説付き です。
問題1:配列の長さを出力
int[] nums = {5, 10, 15, 20};
Java問い: 配列 nums の長さを出力するコードを書け。
解答:
System.out.println(nums.length); // 4
Java解説:
- 配列
numsは要素が4つ →lengthは 4 - 配列の最後のインデックスは
length - 1になる
問題2:最後の要素を取得
int[] nums = {7, 14, 21};
Java問い: 最後の要素を取得する式を書け。
解答:
int last = nums[nums.length - 1]; // 21
Java解説:
- 配列のインデックスは 0 から始まる
- 最後の要素は
length - 1の位置にある
問題3:配列の全要素を出力(for文)
int[] nums = {3, 6, 9};
Java問い: 配列の全要素を1行ずつ出力する for 文を書け。
解答:
for (int i = 0; i < nums.length; i++) {
System.out.println(nums[i]);
}
Java解説:
- ループ条件は
i < nums.lengthが安全 - 最後の要素の後で配列外アクセスを防げる
問題4:合計を求める
int[] nums = {1, 2, 3, 4, 5};
Java問い: 配列の全要素の合計を求めるコードを書け。
解答:
int sum = 0;
for (int i = 0; i < nums.length; i++) {
sum += nums[i];
}
System.out.println(sum); // 15
Java解説:
- 配列の長さはループ回数に使用
- 合計を求めるときは変数を初期化してから足し算する
問題5:平均を求める
int[] nums = {10, 20, 30};
Java問い: 配列の平均値を求めるコードを書け。
解答:
int sum = 0;
for (int i = 0; i < nums.length; i++) {
sum += nums[i];
}
double avg = (double) sum / nums.length;
System.out.println(avg); // 20.0
Java解説:
- 整数同士の割り算は切り捨てされるので、
doubleにキャストする lengthで割ることで要素数に応じて平均を自動計算
問題6:最大値を求める
int[] nums = {8, 3, 15, 6};
Java問い: 配列の最大値を求めるコードを書け。
解答:
int max = nums[0];
for (int i = 1; i < nums.length; i++) {
if (nums[i] > max) {
max = nums[i];
}
}
System.out.println(max); // 15
Java解説:
lengthはループ回数の制御に必須- 0番目を初期値にして1番目以降と比較
問題7:偶数だけ出力
int[] nums = {1, 2, 3, 4, 5, 6};
Java問い: 偶数だけ出力するコードを書け。
解答:
for (int i = 0; i < nums.length; i++) {
if (nums[i] % 2 == 0) {
System.out.println(nums[i]);
}
}
Java解説:
- ループ回数は
nums.length - 条件付きで出力するときも
lengthを使う
問題8:逆順に出力
int[] nums = {10, 20, 30, 40};
Java問い: 配列を逆順に出力するコードを書け。
解答:
for (int i = nums.length - 1; i >= 0; i--) {
System.out.println(nums[i]);
}
Java解説:
- 最後のインデックスは
length - 1 - 逆順ループは
i--で降順に回す
問題9:平均以上の要素を出力
int[] nums = {5, 10, 15, 20};
Java問い: 平均以上の要素を出力するコードを書け。
解答:
int sum = 0;
for (int i = 0; i < nums.length; i++) {
sum += nums[i];
}
double avg = (double) sum / nums.length;
for (int i = 0; i < nums.length; i++) {
if (nums[i] >= avg) {
System.out.println(nums[i]);
}
}
// 出力: 15, 20
Java解説:
- 平均計算には
lengthを使用 - 条件付き出力でもループの範囲は
lengthで安全に指定
問題10:2次元配列の要素数を出力
int[][] table = {
{1, 2, 3},
{4, 5, 6, 7}
};
Java問い: 各行の要素数を出力するコードを書け。
解答:
for (int i = 0; i < table.length; i++) {
System.out.println("行 " + i + " の長さ: " + table[i].length);
}
// 出力:
// 行 0 の長さ: 3
// 行 1 の長さ: 4
Java解説:
- 2次元配列は「行ごとに
.lengthがある」 table.lengthは行数、table[i].lengthはその行の列数
✅ まとめポイント
- 配列の長さは
.lengthで取得 - ループで配列全体を処理するときは必ず
i < array.length - 最後の要素は
array[array.length - 1] - 多次元配列は行ごとに
.lengthがある - 平均や合計などの計算にも
lengthを活用
