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!")
下一篇: U3D框架(三):对象池