作为scala.js上的数组类型,我应该使用什么来获得最佳性能?

时间:2015-04-05 18:47:19

标签: scala.js

Scala对数组有一些特殊处理,因为它们受到JVM本机数组的支持,这增加了它们的使用复杂性 - 特别是在用作泛型时需要传递类清单。当传递那些不可行的时候,它的表现也较差GenericArray。现在,scala.js不能在JVM上运行,那么所有这些复杂性会发生什么呢?原始类型的数组是否存储了未装箱的值? GenericArray的效果是Array吗?在scala.js上,我应该使用什么作为数组类型获得最佳性能?

1 个答案:

答案 0 :(得分:3)

scala.Array模拟Scala.js中JVM数组的功能。这意味着它们具有相同的复杂性,GenericArray确实更慢。他们存储所有未装箱的东西。

为了在通用上下文中获得最佳性能,请使用js.Array。这不需要类标记,也没有通用数组惩罚。但是,Char被装箱,就像任何通用类型一样。