假设我有一个方法 def doSomething: String
这可以引发 DoSomethingException
如果出现问题。
如果我写 Try(doSomething)
,有没有一种简单的方法来映射异常而不恢复它?
基本上,我希望失败成为BusinessException
由 DoSomethingException
引起的.
我知道执行此操作的代码非常简单,但是没有任何内置运算符可以这样做吗?这似乎是一个非常常见的操作,但我在 API 中找不到任何内容。
最佳答案
随着恢复:
val c = scala.util.Try(doSomething).recover {
case e: DoSomethingException => throw new BusinessException
}
关于Scala Try/Future,在失败时包装异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20570228/