gpt4 book ai didi

scala - : _* notation in scala

转载 作者:行者123 更新时间:2023-12-04 16:50:53 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to pass Scala array into Scala vararg method?

(3 个回答)



What does `:_*` (colon underscore star) do in Scala?

(4 个回答)


3年前关闭。




我在许多 spark-scala 答案中遇到了这个:_* 符号,但找不到任何文档。这实际上是什么意思?这种用法的一个例子是在这个问题的答案中

How to use DataFrame filter with isin in Spark Java?

线:

df.filter(col("something").isin(list: _*)

最佳答案

为了理解它,让我们举个例子

scala> def echo(args: String*) =
for (arg <- args) println(arg)
echo: (args: String*)Unit

scala> val arr = Array("What's", "up", "doc?")
arr: Array[String] = Array(What's, up, doc?)

scala> echo(arr)
<console>:14: error: type mismatch;
found : Array[String]
required: String
echo(arr)
scala> echo(arr: _ *)
What's
up
doc?

这个符号, arr:_*告诉编译器将 arr 的每个元素作为它自己的参数传递给 echo ,而不是将所有这些都作为一个参数。

关于scala - : _* notation in scala,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46398016/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com