たとえば、or
という関数があり、次のように定義されています。
or(filters: FilterDefinition*)
そして、私はリストを持っています:
List(X, Y, Z)
今やらなければならないのは、or
のような呼び出しです
or(func(X), func(Y), func(Z))
予想どおり、リストの長さが変わる場合があります。
Scalaでこれを行う最良の方法は何ですか?
この例を見て、String型の変数を受け取る関数printmeを定義します
def printme(s: String*) = s.foreach(println)
scala> printme(List("a","b","c"))
<console>:9: error: type mismatch;
found : List[String]
required: String
printme(List(a,b,c))
:_*
演算子を使用してリストを引数に展開するために本当に必要なもの
scala> val mylist = List("1","2","3")
scala> printme(mylist:_*)
1
2
3