一小段scala代码看不懂?
def collect(): Array[T] = withScope {
val results = sc.runJob(this, (iter: Iterator[T]) => iter.toArray)
Array.concat(results: _*)
}
里面的results是个数组Tuple3[n][]
问下Array.concat(results: _*)是什么意思啊??
我想自己初始化一个Tuple3[n][],但是我不会初始化这个东西啊、、
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
concat 的签名大概是这样:
concat[T](arg: T*)
这叫 variable parameters,表示可以传不定个数的参数,比如:
cincat(t1, t2, t3)
在 concat 内部 arg 是一个 Sequence, 包含 t1 - 3 这些元素。
另外,也可以这样:
也就是你代码中的写法。
Tuple3 的数组可以 Array((a,b,c), (e, f, g)) 这样创建。
results: _ 这个的意思是将 results 数组 unfold, 比如 result = [1, 2, 3] unfold 之后就变成了 1, 2, 3 这个 python 中也有类似的概念 python 中 list 是用 map 是用 **