【发布时间】:2018-10-27 07:13:21
【问题描述】:
假设你有一堆方法:
def foo() : Try[Seq[String]]
def bar(s:String) : Try[String]
并且你想进行理解:
for {
list <- foo
item <- list
result <- bar(item)
} yield result
当然这不会编译,因为在这种情况下 Seq 不能与 Try 一起使用。
任何人都有一个很好的解决方案,如何在不将其分成两个单独的 for 的情况下编写干净的代码?
我已经第三次遇到这个语法问题,并认为是时候问这个问题了。
【问题讨论】: