Scala:Array.toArray的用例?

时间:2014-10-01 09:06:13

标签: arrays scala

Scala.Array包含一个toArray函数,作为ArrayOps的隐式导入。

是否存在Array.toArray的用例,或者它是否总是返回该对象的副本?

1 个答案:

答案 0 :(得分:7)

ArrayOpstoArray继承GenTraversableOnceTraversableOnce中提供了默认实现)

如果Array没有意义,但该方法适用于GenTraversableOnce的所有其他子类,例如MapListSet和许多其他人。

类似地,Map继承了无意义的toMap方法,List一个toListSet一个toSet等等。


toArray的特定情况下,TraversableOnce特征中提供的默认实施被ArrayOps覆盖。

仅当目标类型的运行时类不同时,在toArray上调用Array才会返回一个新的,否则它只会将Array强制转换为适当的类型并返回相同的实例。

因此,一般来说,在toArray的实例上调用Array是没用的,虽然价格不贵。