Понимание перечислений scala
Я должен сказать, что не понимаю перечислимые классы Scala. Я могу скопировать и вставить пример из документации, но я понятия не имею, что происходит.
object WeekDay extends Enumeration {
type WeekDay = Value
val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
import WeekDay._
What means type WeekDay = Value
and why do I have to write that?
Why is val Mon = Value
? What does that even mean?
Why do I have to import the WeekDay
object? And,
when I write val day = WeekDay.Mon
, why is it type WeekDay.Value
, not type WeekDay
?