【Java Silver試験対策】可変長引数の使い方と注意点

可変長引数とは?

可変長引数は、メソッドに渡す引数の数を自由に変えられる便利な機能です。1つでも複数でも、好きな数だけ引数を渡せます。引数の数が事前に決まっていない場合に、特に役立ちます。

可変長引数の宣言方法

void sample(int... num) {}

というように、引数の型の最後に…とピリオドを3つつけて宣言します。

可変長引数の注意点

可変長引数はメソッド内で配列として扱われます。そのため、同じ型の引数はまとめて扱うことができますが、異なる型はまとめられません。

可変長引数以外にも引数を受け取る必要がある場合、可変長引数を記述する順番は最後でなければなりません。なぜなら、どこまでが1番目の引数でどこからが2番目の引数なのか判断できないからです。

void sample(int... a, int b) {} // aとbの区別がつかないためコンパイルエラー

void sample(int c, int... d) {} // 1番目はc、2番目以降はdと判別できるため実行可能