从enumeration Scala document,我有这个例子。
object WeekDay extends Enumeration {
type WeekDay = Value
val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
然而,似乎没有type WeekDay = Value
它可以正常工作。
这是为了什么?什么时候可以跳过这个?
答案 0 :(得分:6)
这一行:
type WeekDay = Value
它只是一种类型别名,你不需要它,但它可能有用,请考虑一下:
object SomeObject {
import WeekDay._
val someDay: WeekDay = Fri
}
导入对象后,您可以声明类型为WeekDay
的变量,如果您没有类型别名,则会定义变量:
object SomeObject {
val someDay: WeekDay.Value = WeekDay.Mon
}
在处理枚举值时,它简单地允许一些简洁。