假设,我有两个选择:
val a: Option = Some("string") val b: Option = None
如何有效地检查是否定义了a和b?
我现在可以写下这样的东西:
if (a.isDefined && b.isDefined) { .... }
但是,它看起来很丑陋而且效率不高.
所以.怎么做?什么是最佳做法?
UPDATE
我想做我的业务逻辑.
if (a.isDefined && b.isDefined) { .... SomeService.changeStatus(someObject,someStatus) ... /* some logic with a */ /* some logic with b */ }
解决方法
用于理解:
val a: Option[String] = Some("string") val b: Option[String] = None for { aValue <- a bValue <- b } yield SomeService.changeStatus(someObject,someStatus)