比较简单,直接上代码。
package scalapackage.scalamatch
import scala.util.Random
/**
* Created by Germmy on 2018/4/29.
*/
object TestCaseClass {
def main(args: Array[String]) {
val products: Array[Product with Serializable] = Array(Hearbeat(1000),SubmitTask("1000","task-1000"),ChecktoutTime)//这个地方的对象竟然不用new就可以放进去
val products1: Product with Serializable = products(Random.nextInt(products.length))
products1 match {//拿到值后直接Match
case Hearbeat(time)=>println("Hearbeat")
case SubmitTask(id,name)=>println("SubmitTask")
case ChecktoutTime=>println("ChecktoutTime")
}
}
}
case class Hearbeat(time:Long)
case class SubmitTask(id:String,name:String)
case object ChecktoutTime