ade*_*rsq 5 optimization scala
Scala的哪些结构可以比Java更有效地使用,以提高执行速度?我不知道这是否可能,但要明确我的疑惑:)
谢谢
从2.9开始,并行集合库将成为标准发行版的一部分.这将允许在多个核心上极其简单地分配所谓的"令人尴尬的并行"问题.在Java中这样做需要付出更多努力.
作为一般规则,根据问题和编码技术,Scala基准测试的范围从适度慢于Java到稍快一些.
要扩展Ross的答案,您可以使用@specialized生成集合的特定版本.例如,在Java中,您通常将fastutil或Apache Primitive用于基元集合.Scala的@specialized将为您生成这些变体并自动隐藏它们,如下所示:
class MyLinkedList[@specialized T] (args: T*) {
// whatever it does
}
Run Code Online (Sandbox Code Playgroud)
除此之外,actor使编写并发应用程序变得更容易.2.9中提出的是并行集合,它可以跨集合并行应用高阶函数,从而加速任何你拥有Scala等效Java循环的地方(折叠,foreach等).请参阅此ScalaDays谈论此事的细节.