Yuc*_*ong 1 scala option partial-functions
我们假设我们有一个选项foo1和一个选项foo2:
val foo1: Option[Foo]
val foo2: Option[Foo]
Run Code Online (Sandbox Code Playgroud)
是否有运营商/功能,让我返回的值foo2时foo1是None?
val finalFoo: Option[Foo] = foo1.getOrElseOption(foo2)
Run Code Online (Sandbox Code Playgroud)
以上getOrElseOption显然不存在.我知道我们可以这样做,但它有点冗长且难以理解:
foo1.map(Some(_)).getOrElse(foo2).
Run Code Online (Sandbox Code Playgroud)
Tim*_*Tim 12
Option有点像部分功能,所以orElse会做你想要的:
foo1 orElse foo2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
161 次 |
| 最近记录: |