例如,有两个类:A
和B
。 A
中有一个方法叫做toB
。
现在有一个 a
类型的值 Future[Option[A]]
,将它转换为 Future 的最优雅的方法是什么[选项[B]]
?
目前我正在使用 a.map(_.map(_.toB))
,但我认为它看起来有点笨拙和困惑。有没有人有更好的方法来做到这一点? (隐式转换)
谢谢!
最佳答案
如果您需要对 Future[Option[?]]
的“堆栈”进行大量操作,您可以使用 monad transformer :
val a: OptionT[Future, A] = OptionT(...)
val b: OptionT[Future, B] = a.map(_.toB)
关于scala - Scala中,Future[Option[A]]如何进行类型转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29917542/