//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的更多相关文章

随机推荐

  1. SVN更新报错:Checksum mismatch for ……

    问题: Checksum mismatch while updating '……'; expected: '3f9fd4dd7d1a0304d8020f73300a3e07', actual: 'cd ...

  2. 关于maven项目 启动页面报错 The type java.io.ObjectInputStream cannot be resolved.

    这种情况,要修改jdk版本,默认jdk选择 jdk不选jre windows---->perference---->java----->installes jres-----> ...

  3. Python中的Django框架中prefetch_related()函数对数据库查询的优化

    实例的背景说明 假定一个个人信息系统,需要记录系统中各个人的故乡.居住地.以及到过的城市.数据库设计如下: Models.py 内容如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 1 ...

  4. Python基础语法之字典

    1 字典基础 1.1 字典是无序的对象的集合,通过键来存取,字典的键只能是不可变类型. 1.3 字典的长度可变,异构,任意嵌套. 1.2 python中不可变数据类型包括:数值类型,字符串和元组. 2 ...

  5. maven 异常 提示 cannot be read or is not a valid ZIP file

    Archive for required library: 'D:/repository/Maven/org/springframework/spring-aop/4.3.6.RELEASE/spri ...

  6. python 并发编程 多进程 互斥锁与join区别

    互斥锁与join 互斥锁和join都可以把并发变成串行 以下代码是用join实现串行 from multiprocessing import Process import time import js ...

  7. kafka之config/server.properties配置参数说明

    broker.id--服务器编号 host.name--推荐写本机ip advertised.host.name--外网访问ip advertised.port--外网访问端口 num.partiti ...

  8. 2019JAVA第一次课程总结

    课程总结:到现在为止之,学习专业课程已有两周了,从刚开始的啥也不懂,现在慢慢入门了.最开始我们为JAVA开发了运行环境,然后使用类编写了最简单的输出,然后开始学习了数据类型,这可以在编程中帮我们解决一 ...

  9. vue使用笔记一

    1.vue-cli安装 sudo npm install -g @vue/cli 2.查看是否安装成功 vue --version 3.创建项目 vue create hello-world 4.启动 ...

  10. [MicroSoft]Introducing .NET 5

    Introducing .NET 5 Richard https://devblogs.microsoft.com/dotnet/introducing-net-5/ 将路线图 完整的给出来了. Ma ...