Scala Enumeration

StackOverflow의 Scala Enumeration에 대한 문답을 간단히 요약

object Weekday extends Enumeration {
  type Weekday = Value
  val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
import Weekday._

  • Enumeration 클래스는 Value type(실제로는 내부 클래스)이 있으며 type Weekday = Value는 type alias
  • val Mon, Tue, Wed, Thur, Fri, Sat, Sun = Value는 앞서 말한 type의 대입이 아니라 변수 각각에 대해 Value 메소드가 반복되어 호출되는 것이며(아마도 companion object의 apply 메소드인듯) 메소드는 매번 새로운 Value 인스턴스를 생성해서 반환한다
  • 이후 Weekday의 모든 변수를 import하고 나면 Mon, Tue 등을 바로 사용할 수 있다

댓글

이 블로그의 인기 게시물

scite 한글 설정

터미널에서 스칼라 파일 직접 컴파일, 실행

로잉 머신 운동 2달째