Scala是具有JVM和JavaScript运行时的功能性和面向对象的编程语言,目前有新版本可用。 Scala 2.13通过对集合进行全面检查,添加了新的类和方法以及改进了性能和稳定性,从而改进了标准库。
标准库中的集合已针对性能,安全性和简单性进行了全面检查。 对集合进行了多项改进,包括:
- 更简单的方法签名。 转换方法不再采用隐式的
CanBuildFrom
参数。 - 更简单的类型层次结构。
Traversable
和TraversableOnce
已被弃用为Iterable
和IterableOnce
别名。 - 现在,并行集合是一个单独的模块。
-
Seq
特征现在是collection.immutable.Seq
的别名。 以前,它是可能可变的collection.Seq
的别名。 - 简化了可行的视图,并提供了更快的
HashMap/Set
实现。 - 集合序列化已更改。 集合现在尽可能使用序列化代理模式。
-
SeqMap
已添加为抽象类型,其中mmutable.SeqMap
提供了不变的映射以保持插入顺序。
同样在标准库中,“ Future
功能更快。 Future
表示当前可能可用或可能不可用的值,或者如果无法使该值可用则表示异常。 Java互操作性的扩展方法现在位于scala.jdk
,而Java的显式转换器位于scala.jdk.javaapi
。 scala-java8-compat
模块现在是标准库的一部分。
Scala 2.13的其他改进:
- 编译器承诺将提高5%到10%。 它还具有改进的优化器并利用确定性输出。 在更多情况下,编译器将为相同的输入生成相同的输出,以实现可复制的构建。 集合的操作得到了进一步优化,内联得到了改善。
- 字符串和整数的文字现在具有关联的类型。 另外,下划线现在可以用作分隔符。
Scala最初是一种JVM语言, 此后通过引入Scala.js 添加了JavaScript的运行时 。 您可以在Scala网站上找到有关下载Scala的说明 。