这是一个非常简短的问题。
我有一个ParIterable
集合,我想将它“转换回”为Iterable
. 那可能吗?
相应的ScalaDoc说:
方法:
def seq: Sequential def par: Repr
分别生成集合的顺序或并行实现。方法 par 仅返回对此并行集合的引用。方法 seq 是有效的——它不会复制元素。相反,它将使用相同的底层数据结构创建集合的顺序版本。请注意,通常顺序集合并非如此——它们可能会复制元素并产生不同的底层数据结构。
toMap、toSeq 或 toSet 方法与 par 和 seq 的组合是在不同集合类型之间进行更改的灵活方法。
是的,只要打电话.seq
。例子:
scala> val x = Iterable(1,2,3).par
x: scala.collection.parallel.ParIterable[Int] = ParVector(1, 2, 3)
scala> x.seq
res6: Iterable[Int] = Vector(1, 2, 3)