【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
Problem
你准备使用一个枚举类(一组被命名的值作为常量)在你的应用里。
Solution
继承scala.Enumeration来创建你的枚举类:
package com.acme.app {
object Margin extends Enumeration {
type Margin = Value
val TOP, BOTTOM, LEFT, RIGHT = Value
}
}
object Main {
def main(args: Array[String]) {
import com.acme.app.Margin._
val currentMargin = TOP
if (currentMargin == TOP) println("working on TOP")
import com.acme.app.Margin
Margin.values.foreach(println)
}
}
对于创建一组常量,Enumerations是非常有用的,比如一周中的天,一年中的周。还有许多其他的情况,当你用到一组相关常量的时候。
你也可以用下面这种方案,但是他回根据你的代码去生成4次,并且如果你只是想把它作为枚举来用的话,有许多东西是你用不到的:
package com.acme.app {
trait Margin
case object TOP extends Margin
case object RIGHT extends Margin
case object BOTTOM extends Margin
case object LEFT extends Margin
}
来源:oschina
链接:https://my.oschina.net/u/2633112/blog/662204