LoginSignup
0
0

More than 3 years have passed since last update.

可変長引数をとるメソッドを作ってみる

Posted at

可変長引数とは

関数に渡す引数の要素数が決まっておらず複数になり得る引数のこと
つまり可変長、1つかもしれないし、2つかもしれないし、3つかもしれない。

定義してみる

def variableLength(strings: String*): Unit = {
  strings.foreach(println)
}

引数の最後に*をつけることによって可変長引数を受け取れることができる。

実行してみる

variableLength("aaa") // "aaa"
variableLength("aaa", "bbb") // "aaa" "bbb"

このように要素数の異なる引数を受け付けて実行することができる。

Seqはどうなるの

Seqは受け付けることができるのかということになるのだが、以下のようにすることによって可能になる。

val seq = Seq("aaa", "bbb")

variableLength(seq: _*) // "aaa" "bbb"

まとめ

可変長引数について知見を得たので書いてみました。
未だ使用する場面に遭遇していませんが、どこかしらで使う場面が出た時が楽しみです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0