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 クラスの継承の仕組みとサンプル