collections
trait
Scala中的trait是一种特殊的抽象类型,类似于Java中的接口。Trait可以定义一组方法和字段,可以被类或其他Trait继承或混入。Trait可以被用来实现多重继承,提供了一种解决Java中单继承限制的方法。
Trait可以包含抽象方法和具体方法的实现。抽象方法必须在继承Trait的类或Trait中被实现,而具体方法可以直接使用。Trait中的字段可以是抽象的或具体的,具体字段可以被继承或混入的类或Trait直接使用。
Trait还可以被用来进行模块化编程,通过将相关方法和字段放在一个Trait中,可以方便地组织代码并提供可重用的模块。Trait也可以被用来实现类型类的概念,通过在Trait中定义一组操作,然后在需要使用这些操作的类型中混入该Trait,可以实现对该类型的扩展。
总之,Scala中的Trait是一种非常强大和灵活的特性,可以用于实现多重继承、模块化编程和类型类等概念。
类
箭头函数 (function values)
yield
if-else
for循环
scala实现FizzBuzz
for (i <- Range.inclusive(1, 100)) {
println(
if (i % 3 == 0 && i % 5 == 0) "FizzBuzz"
else if (i % 3 == 0) "Fizz"
else if (i % 5 == 0) "Buzz"
else i
)
}
数据类型
数字默认是32-bit的Int。
String是16-bit char的array。
打印变量
Tuple
Tuples come in any size from 1 to 22 items long
数组
Option