gpt4 book ai didi

scala - Scala 中的延迟合并选项

转载 作者:行者123 更新时间:2023-12-04 10:38:51 24 4
gpt4 key购买 nike

我有几种计算值的方法,以降低偏好。

firstWay()
second() + way()
orA(thirdWay())

每个都返回一个 Option .我想“合并”这些并得到一个 Option其中第一个 Some 返回的值其中,或 None如果全部返回 None .

当然,如果 firstWay()返回 Some ,我不应该计算其余的。

什么是最惯用(或至少合理可读)的方法来做到这一点?

最佳答案

firstWay().orElse(second() + way()).orElse(orA(thirdWay()))
orElse的论点被懒惰地评估。

the documentation .

关于scala - Scala 中的延迟合并选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21842499/

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