gpt4 book ai didi

scala - Scala中的返回码

转载 作者:行者123 更新时间:2023-12-03 08:04:31 25 4
gpt4 key购买 nike

假设我正在Scala中编写一个函数,该函数返回一个返回代码:SUCCESSERROR1ERROR2,...(请注意,它与scala.util.Either不同)

显然,我可以创建一个层次结构来表示返回代码,如下所示:

特质ReturnCode
案例对象成功扩展了ReturnCode
案例对象Error1扩展ReturnCode
案例对象Error2扩展ReturnCode
...

现在,我想知道Scala是否为此提供了“标准”惯用解决方案。

最佳答案

您可以使用Try替代Either。 “left”值固定为Throwable,它是右偏的,这意味着map/flatMap等仅在成功执行时才会执行,并且异常会保持原样,就像Some的wirh NoneOption一样。您可以在块周围使用Try.apply来捕获非致命异常并将结果包装在Try中。

关于scala - Scala中的返回码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16495962/

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