【IT168 评论】Scala作为一个严肃的竞争者,旨在解决Java的常见问题。Scala功能齐全且强大,具有强大的类型系统。令很多程序员着迷的是Scala在JVM上的函数式编程与富有表现力的系统之间的联系。另外一个好处是与Java的互操作性,特别是如果你想从一个成熟的Java代码库逐渐迁移到Scala。
本文收集了Scala的20多个基本使用技巧,如果你正在寻找一个参考表单,这就是最棒的选择。
变量和方法
字符串
常规表达式
类
对象
对象持有“静态”成员。当用作伴随对象时,在隐性搜索期间是相关的,对象是 singletons。
Traits
sealed修饰符禁止从不同源文件扩展的特征,这可以在模式匹配时进行详尽的检查。
Case类
Case类用来做什么?
构造函数参数被提升为字段
使用应用和取消应用生成伴随对象
生成copy方法
生成equals,hashCode和toString
For-loop和For-comprehension
For-loops:仅迭代副作用。For-comprehensions:链效应计算。
模式匹配
定制提取器
键入参数
方差
Implicits
Scala搜索implicits的地方有两类:在呼叫站点无标签的标识符和implicits范围,与implicits类型相关联的所有类的伴随对象。
类型
选项
替换null.。
Either
必须处理的域错误,有多个错误原因。
Try
与Java / Legacy代码交互,其中抛出异常是最后手段。
Collections
需要不可变的Collections,首先回到var,然后使用可变集合。
警告:Seq默认允许可变实现,导入scala.collection.immutable.Seq。
重要方法
特征
不要盲目导入Scala的默认ExecutionContext,它针对CPU绑定任务进行了优化!
IntelliJ IDEA的Scala插件