Java 逆引き集 | メソッド定義と引数(可変長引数) — 再利用可能ロジック

Java Java
スポンサーリンク

メソッド定義と引数(可変長引数) — 再利用可能ロジック

プログラムを整理して「同じ処理を何度も使えるようにする」のが メソッド
引数は「外から渡す材料」。可変長引数は「材料の数が決まっていないとき」に便利です。初心者向けに、基本から例題までかみ砕いて説明します。


メソッド定義の基本

書き方

戻り値の型 メソッド名(引数リスト) {
    // 処理
    return 戻り値; // 戻り値がある場合
}
Java

例:合計を計算するメソッド

int sum(int a, int b) {
    return a + b;
}
Java
  • 戻り値の型: 計算結果の型(例: int)。戻り値が不要なら void
  • メソッド名: 小文字で始め、動詞っぽい名前が読みやすい。
  • 引数リスト: 外から渡す値。複数ある場合はカンマ区切り。

可変長引数(varargs)

書き方

戻り値の型 メソッド名(型... 引数名) {
    // 引数名は配列のように扱える
}
Java
  • 型... と書くと「0個以上の引数」を渡せる。
  • メソッド内では配列として扱える。

例:複数の数値を合計する

int sumAll(int... nums) {
    int total = 0;
    for (int n : nums) {
        total += n;
    }
    return total;
}
Java

呼び出し例:

System.out.println(sumAll());           // 0
System.out.println(sumAll(5));          // 5
System.out.println(sumAll(1, 2, 3, 4)); // 10
Java

👉 引数の数が決まっていないときに便利。


通常引数と可変長引数の組み合わせ

double average(String label, int... nums) {
    int total = 0;
    for (int n : nums) total += n;
    return (nums.length == 0) ? 0 : (double) total / nums.length;
}
Java

呼び出し例:

System.out.println(average("Math", 80, 90, 100)); // 90.0
System.out.println(average("Empty"));             // 0.0
Java
  • 注意: 可変長引数は「最後の引数」にしか置けない。
  • nums.length で渡された個数を確認できる。

例題で練習

例題1: 最大値を求めるメソッド

int max(int... values) {
    if (values.length == 0) return Integer.MIN_VALUE;
    int m = values[0];
    for (int v : values) {
        if (v > m) m = v;
    }
    return m;
}

System.out.println(max(3, 7, 2, 9)); // 9
Java

👉 可変長引数で「いくつでもOK」な最大値計算。


例題2: 文字列を連結するメソッド

String join(String... words) {
    StringBuilder sb = new StringBuilder();
    for (String w : words) {
        sb.append(w);
    }
    return sb.toString();
}

System.out.println(join("Hello", " ", "World")); // Hello World
Java

👉 文字列の結合も可変長引数で柔軟に。


例題3: ログ出力メソッド

void log(String level, String... messages) {
    for (String msg : messages) {
        System.out.println("[" + level + "] " + msg);
    }
}

log("INFO", "Start", "Processing", "End");
Java

👉 ログのラベル+複数メッセージをまとめて出力。


テンプレート集

基本メソッド

戻り値型 メソッド名(型 引数1, 型 引数2) {
    // 処理
    return 戻り値;
}
Java

可変長引数

戻り値型 メソッド名(型... args) {
    for (型 a : args) {
        // 繰り返し処理
    }
    return 結果;
}
Java

引数+可変長引数

戻り値型 メソッド名(型 fixed, 型... args) {
    // fixed は必須、args は任意
}
Java

まとめと次の一歩

  • メソッド: 再利用可能な処理のまとまり。
  • 引数: 外から渡す材料。
  • 可変長引数: 材料の数が決まっていないときに便利。
  • コツ: 可変長引数は最後に置く、配列のように扱う。

👉 次の練習課題として「注文金額をいくつでも渡せるメソッドを作り、合計と平均を返す」などを試すと、ビジネスロジックに直結した理解が深まります。

タイトルとURLをコピーしました