Java 可変長引数のメソッドのサンプル

Javaの可変長引数のメソッドのサンプルです。

目次

サンプル 可変長引数のメソッド
  通常の引数と可変長引数がある場合

可変長引数のメソッド

メソッド名(引数の型... 変数)
  • メソッドの引数の数を可変にできます。
  • 呼び出し先のメソッドの引数の型の後ろにピリオドを3つ「...」つけます。
  • 可変長引数の変数は、1つのみで配列を指定できます。場所は引数の末尾に指定します。
  • 引数がない場合でもエラーになりません。

可変長引数のメソッドのサンプルです。

package test1;

public class Test1 {
    public static void main(String[] args) {
        Sample1.print1("あ"); // あ
        Sample1.print1("い","う"); // い う
        Sample1.print1(); // 出力なし
    }
}
class Sample1{
    static void print1(String... colors){
        for (String c : colors) {
            System.out.println(c);
        }
    }
}

5行目のメソッドの引数の数は1つです。
6行目のメソッドの引数の数は2つです。
7行目は、引数がありませんがエラーになりません。
11行目は、可変長引数です。String型の後ろにピリオド「…」が3つ付いています。

 

通常の引数と可変長引数がある場合

通常の引数と可変長引数がある場合のサンプルです。

package test1;

public class Test1 {
    public static void main(String[] args) {
        Sample2.print1(1,"A"); //1A
        Sample2.print1(2,"B","C"); //2B 2C
        Sample2.print1(3);  //出力なし
    }
}
class Sample2{
    static void print1(int i,String... colors){
        for (String c : colors) {
            System.out.println(i + c);
        }
    }
}

5行目は、"A"が可変長引数にあたります。
6行目は、"B"と"C"が可変長引数にあたります。
7行目は、可変長引数をなしにしています。エラーにはなりません。
11行目は、2つめの引数が可変長引数です。

関連の記事

Java 拡張for文 配列やコレクションをループで取得
Java if文 条件分岐を行うサンプル
Java for文 処理を繰り返す(break/continue)
Java入門 クラスの仕組みとサンプル
Java クラスの継承の仕組みとサンプル

△上に戻る