Scala模式匹配下提取器构造

来源:互联网 发布:凯迪网络猫眼看人 编辑:程序博客网 时间:2024/05/18 01:51

示例代码:


object :> {  def unapply[A] (list:List[A]) = {    Some( (list.init,list.last) )  }}object Extractor_Advanced {  def main(args: Array[String]): Unit = {    (1 to 9).toList match{ case _ :> 9 => println("Spark") }  //满足最后一个元素是9的话就打印输出Spark    (1 to 9).toList match{ case x :> 8 :> 9 => println("Hadoop")}  //满足最后一个元素是9以外,在剩下的元素当中满足最后一个元素是8之后打印输出Hadoop    (1 to 9).toList match{ case :>(:>(_,8),9) => println("Flink")} //第一部分(_,8);第二部分是9。满足最后一个元素是9之外,倒数第二个元素是8;类似上边的Some      }}









0 0
原创粉丝点击