Подтвердить что ты не робот

Scala: передать функции Seq в var-args

Для функции, которая принимает переменное число аргументов, например

def foo(os: String*) =
  println(os.toList)

Как передать последовательность аргументов функции? Я хотел бы написать:

val args = Seq("hi", "there")
foo(args)

Очевидно, что это не сработает.

4b9b3361

Ответ 1

foo(args:_*) делает трюк. Вместо того, чтобы применять последовательность как один единственный аргумент, каждый элемент в последовательности будет использоваться в качестве аргумента.