apply_test

Posted hapyygril

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apply_test相关的知识,希望对你有一定的参考价值。

//object apply_test 
// def main(args:Array[String]): Unit =
// println("apply 方法:"+apply("zara","gmail.com"))
// println("unapplu方法"+unapply("zara@gmail.com"))
// println("unapply方法"+unapply("zara ali"))
//
// def apply(user:String,domain:String)=
// user+"@"+domain
//
// def unapply(str:String):Option[(String,String)]=
// val parts=str split "@"
// if(parts.length==2)
// Some(parts(0),parts(1))
// else
// None
//
//
//

//编译器在实例化的时会调用 apply 方法
//提取器对象中使用 match 语句是,unapply 将自动执行
object apply_test
def main(args:Array[String]): Unit =
val x=apply_test(5)
println(x)
x match
case apply_test(num) =>println(x+"是"+num+"的2倍")
case _ =>println("无法计算")


def apply(x:Int)=x*2
def unapply(z:Int):Option[Int]=if(z%2==0) Some(z/2) else None

以上是关于apply_test的主要内容,如果未能解决你的问题,请参考以下文章