gpt4 book ai didi

scala - 如何有效地检查是否定义了两个选项?

转载 作者:行者123 更新时间:2023-12-04 23:01:29 25 4
gpt4 key购买 nike

假设,我有两个选择:

val a: Option = Some("string")
val b: Option = None

如何有效地检查 a 和 b 是否已定义?

我现在可以写这样的东西:
if (a.isDefined && b.isDefined) {
....
}

但是,它看起来很丑,而且效率不高。

所以。怎么做?什么是最佳实践?

更新

我想做我的业务逻辑。
if (a.isDefined && b.isDefined) {
....

SomeService.changeStatus(someObject, someStatus)

...
/* some logic with a */
/* some logic with b */
}

最佳答案

或者,只是为了好玩,

scala> val a: Option[String] = Some("string")
a: Option[String] = Some(string)

scala> val b: Option[String] = None
b: Option[String] = None

scala> val c = Option("c")
c: Option[String] = Some(c)

scala> (a zip b).nonEmpty
res0: Boolean = false

scala> (a zip c).nonEmpty
res1: Boolean = true

scala> (a zip b zip c).nonEmpty
res2: Boolean = false

关于scala - 如何有效地检查是否定义了两个选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22975788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com