public class Step01_Tests {
public static void main(String[] args) {
// テストケース01
int[] stocks1 = {10, 5, 3, 0, 8};
printStockSum(stocks1);
// 出力: "合計在庫数: 26"
// テストケース02
int[] stocks2 = {0, 0, 0};
printStockSum(stocks2);
// 出力: "合計在庫数: 0"
// テストケース03
int[] stocks3 = {100};
printStockSum(stocks3);
// 出力: "合計在庫数: 100"
}
// 在庫の合計を求めて出力するメソッド
public static void printStockSum(int[] stocks) {
// 合計値を格納する変数
int sum = 0;
// 配列のすべての要素をループして加算
for (int i = 0; i < stocks.length; i++) {
sum += stocks[i]; // i番目の要素をsumに足す
}
// フォーマットに従って出力
System.out.println("合計在庫数: " + sum);
}
}
解説
配列のすべての在庫数を合計し、出力するメソッドを作る
目的の整理
このステップのゴールは、「商品ごとの在庫数を配列で受け取り、その合計を出力するメソッドを自分で書くこと」です。
Javaの基本である配列のループ処理と合計値の計算を、自分の手でしっかり組み立てられるようになるのが目的です。
プログラムの構成(ざっくり流れ)
- 在庫数が格納された
int[] stocks
を引数として受け取る for
文で配列の中身を1つずつ取り出す- 合計値を計算していく
- 結果を指定されたフォーマットで出力する
ポイント
1.printStockSum(int[] stocks)
の形にする理由
- メソッドの引数に配列を渡すことで、複数の在庫パターン(テストケース)に対応しやすくなる。
- 同じ処理を何度も使い回す構造(=再利用性のあるコード)に近づく。
- 引数に配列を取る場合の書き方に慣れよう!
2. int sum = 0;
- 合計を入れる変数。初期値が
0
であるのは当然。 - ループの外で宣言するのがポイント(毎回初期化されないように)。
3. for (int i = 0; i < stocks.length; i++)
- 典型的な「配列を最初から最後までなめる」ループ。
- 配列の長さが
stocks.length
。インデックスは0
から始まる。
4. sum += stocks[i];
- その時点での在庫数を合計に加える処理。
sum = sum + stocks[i];
を省略した形。
5. System.out.println("合計在庫数: " + sum);
- 出力形式は問題文の指定に完全に従うこと。
- 文字列と数値の連結は
+
を使えばOK。
👉 Just Keep Typing, Baby!では、この「配列修羅道」でつまづいた人向けの解説をしています。こちらもぜひ!