黑猴子的家:Scala 模拟枚举

样例类可以模拟出枚举类型

1、创建密封样例类

(不密封也可以,在这里只是为了用一下sealed关键字)

package unit6
sealed abstract class TrafficLightColor
case object Red extends TrafficLightColor
case object Yellow extends TrafficLightColor
case object Green extends TrafficLightColor

尖叫提示:这里的样例类使用object关键字而不是class关键字,是因为Scala不允许没有参数列表的样例类

2、模拟枚举

println("遍历密封样例类-------")
for (color <- Array(Red, Yellow, Green)){
  println(
    color match {
      case Red => "红灯停"
      case Yellow => "黄灯等一等"
      case Green => "绿灯行"
    })
}

你可能感兴趣的:(黑猴子的家:Scala 模拟枚举)