将 List[String] 传递给采用 f(args: String*) scala 的函数

Pass List[String] to function that takes f(args: String*) scala

我需要用 spark 读取特定的 parquet 文件,我知道这可以这样做:

sqlContext
    .read
    .parquet("s3://bucket/key", "s3://bucket/key")

现在我有一个 List[String] 对象,其中包含所有这些 s3 路径,但我不知道如何以编程方式将其传递给 Scala 中的 parquet 函数?有很多文件可以手动完成,有什么想法可以通过编程将文件放入 parquet 函数吗?

我之前回答过一个关于重复参数的类似问题

如@Dima 所述,您正在寻找一个 splat 运算符,因为 .parquet 预期 重复参数 :

sqlContext.read.parquet(listOfStrings:_*)

更多关于 Scala Language Specification seciton 4.6.2

中的重复参数

虽然是 scala 2.9 的规范,但这部分没有改变。