欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

scala的Option类型 scalaOption 

程序员文章站 2022-07-08 10:09:49
...

编译的错误总比运行时错误好。因为你能够马上处理他,而不是要等到代码运行的时候。

有的时候你获取不到结果,例如你搜索一个列表没有值,访问一个Map有没有相应的Key,在JAVA中你将收到一个NULL,如果你没有处理这个Null,将会抛出NullException。在Scala中,你可以用Option,这样你可以以一种比较优雅的方式避免NullException.

Option是一种参数类型,例如Option[String] 或者 Option[File]

Option有两种值Some(...)或者None

var s = Some("abc")          
var t: Option[String] = None 
def chooseFile(): Option[File] = { ... }
//比较啰嗦的方式
chooseFile() match {
      case Some(f) => 
      case None =>   
}
//比较土的方式
if (t isDefined) println(t)
if (t isEmpty) println("Nothing here!")
//比较简单的方式
val w = t.getOrElse("Nothing here!") 

 

 

相关标签: scala Option