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

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

目次

可変長引数のメソッド

  • メソッドの引数の数を可変にできます。
  • 呼ばれる側の可変長引数の変数は、1つのみ指定できます。
  • 呼ばれる側の可変長引数の変数は、配列です。
  • 呼ばれる側の可変長引数の変数は、引数の末尾にのみ指定できます。
  • 呼ばれる側の可変長引数の型の後ろにピリオドを3つ「...」つけます。

 

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

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

7行目のメソッドの引数の数は1つです。
8行目のメソッドの引数の数は2つです。
9行目は、引数をなしにしています。エラーにはなりません。
14行目は、String型の後ろにピリオド「…」が3つ付いています。

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);
        }
    }
}

 

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

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

7行目は、"A"が可変長引数にあたります。
8行目は、"B"と"C"が可変長引数にあたります。
9行目は、可変長引数をなしにしています。エラーにはなりません。
14行目は、末尾の引数が可変長引数です。

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);
        }
    }
}

関連の記事

Java 配列/コレクションの値をループで取得するサンプル(拡張for文)
Java if文のサンプル
Java for文とbreakとcontinueのサンプル
Java switch文のサンプル
Java while文とdo...while文のサンプル
Java 変数のデータ型とラッパークラス
Java static初期化ブロックと初期化ブロックのサンプル
Java staticインポートのサンプル
Java final修飾子のサンプル
Java 標準アノテーションのサンプル
Java 列挙型(enum型)のサンプル
Java 可変長引数のメソッドのサンプル

プログラムでつまったらteratailに登録して質問しましょう!↓↓↓

△上に戻る