例子:

var in = None:Option[FileInputStream]
var out = None:Option[FileOutputStream]
try{in = Some(new FileInputStream("/tmp/text.class"))out = Some(new FileOutputStream("/tmp/text1.class"))
}catch{case e:IOException =>e.printStackTrace
}finally{println("end....")
}

如果你的类中得到一个字段值可能是null,如何消除呢,用Option

def getName:Option[String] = {var name = javaPerson.getNameif(name==null) None else Some(name)
}

使用getOrElse方法,如果方法成功获得实际的值,方法失败获得默认值:

val x = toInt("1").getOrElse(0)

scala中NULL的option定义的字段初始化用Some相关推荐

  1. scala中val与def定义的区别

    scala中val与def定义的区别 变量 val定义一个不可改变的变量, def则是一个方法: //scala中定义: def main(args: Array[String]): Unit = { ...

  2. Objective-C 中 NULL、nil、Nil、NSNull 的定义及不同

    来源:XcodeMen(康祖彬) 链接:http://www.jianshu.com/p/5d7033b15052 本文由我们团队的 康祖彬 童鞋撰写,这是他的个人主页:https://kangzub ...

  3. Scala系列-4、scala中特质、柯里化、闭包等

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 传送门:大数据系列文章目录 目录 scala中特质 特质作为接口使用 特质中放置非抽象的成员 ...

  4. Scala中的类和对象

    类的定义 使用class定义 类的字段 在类中使用var,val定义字段 类的方法 scala中,使用var定义字段默认提供setter和getter方法 对应名称为 value_= 和value 1 ...

  5. 在Scala中评估val,var,lazy val和def构造时

    发表简短目录 (Post Brief TOC) Introduction介绍 Scala 'val' usageScala" val"用法 How Scala 'val' is E ...

  6. scala中使用Option、Some、None,避免使用null

    避免null使用 大多数语言都有一个特殊的关键字或者对象来表示一个对象引用的是"无",在Java,它是null.在Java 里,null 是一个关键字,不是一个对象,所以对它调用任 ...

  7. Scala中的None,Nothing,Null,Nil

    在scala中这四个类型名称很类似,作用确实完全不同的. None是一个object,是Option的子类型,定义如下 case object None extends Option[Nothing] ...

  8. scala中使用特质中的抽象字段和实际字段

    Scala中,trait相当于Java中的接口,遇到需要使用Java接口的场景时,你就在scala中可以使用trait了. 我们知道Java中你可以实现多个接口,那么Scala中,你也可以继承多个tr ...

  9. Scala中如何优雅的处理Null

    前言 如果在scala代码还在使用id! = null,可能会被有的人嘲笑,都什么年代了,竟然还有这样的写法,NullPointerException见少了吧? 不过,据统计: Spark 源代码使用 ...

最新文章

  1. 输出不详宗教预言,Google翻译为何“水逆”了?
  2. KVM 虚拟机在 IBM System x 上应用_图文详解桥接网络配置
  3. python3 import导入模块
  4. 针对双系统ubuntu16.04卡死及系统没有声音解决方法
  5. RibbonControl中的主题设计
  6. win10 python 调用模块_python常识系列14--gt;python通过jpype模块调用jar包
  7. android tcp 最优窗口,Android 面试必备 - 计算机网络基本知识(TCP,UDP,Http,https)...
  8. 现控笔记(三):状态空间表达式的解
  9. Emlog二次元acg博客主题模板—Grace
  10. Shenyu网关本地打docker镜像包
  11. Windows 10用户档案无法加载的解决方法
  12. office2016 office2019 office2013 ----一键安装:
  13. 企业单方调岗降薪,务工者不服离职索赔
  14. 忙于事业疏于情感老婆网上找情人
  15. 动态IP与静态ip的区别是什么
  16. 鼠标USB接口不能用了——卸载总线驱动
  17. C++编程题最常用函数汇总
  18. vb如何实现两台计算机数据包传送,VB学习网站! - PLC论坛 工控网 工控论坛 http://bbs.gkong.com/...
  19. 拯救pandas计划(7)——对含金额标志的字符串列转换为浮点类型数据
  20. 一个优秀的大数据开发工程师的日常是怎么样的?

热门文章

  1. java转文件编码bom_编码转换:UTF-8 BOM to GBK
  2. python制作视频播放器_Python应用03 使用PyQT制作视频播放器
  3. python工具打造之实现端口扫描
  4. 自己做网站翻译服务器 - 添加网站,猎场seo视频教程:站群之间应该如何进行链接-专业...
  5. java获取当前分钟_分别获取当前年月日 小时 分钟 秒 毫秒
  6. 谷歌云计算机,google云计算的三大核心技术
  7. 两个同时comet matlab,Matlab讲义 - 图文
  8. css如何让滚轮滚动时 不让页面滚动_中国第五届 CSS 大会参会总结
  9. php 清除缓存的操作,注意 Laravel 清除缓存 PHP artisan cache:clear 的使用
  10. dgi数据治理_荐书 | 5G时代组织急需数据体检