【问题标题】:Best way to get an Try[Array[(String,String)]] in Scala在 Scala 中获取 Try[Array[(String,String)]] 的最佳方法
【发布时间】:2018-08-12 20:53:48
【问题描述】:

我有一个将索引作为参数并返回Try[(String,String)] 的方法,我需要为许多索引执行它并将结果存储在数组Try[Array[(String,String)]] 中。但是该方法返回许多Try,什么是最好的方法是加入所有Try[Array[]]。

val index = (0 to 10)
def methodA(index: Int): Try[(String,String)] = Try{("a","b")}
def query(index: Int): Try[(String,String)] = ???

【问题讨论】:

    标签: scala try-catch


    【解决方案1】:

    依次调用每个方法和get 的结果,并将整个事情包装在Try 中以捕获第一个错误:

      Try(index.map(methodA(_).get))
    

    如果任何方法失败,则get 会抛出一个错误,该错误将被外部Try 捕获。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-13
      • 1970-01-01
      • 1970-01-01
      • 2020-08-17
      • 2017-06-06
      • 2017-08-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多